From 341e33c3ef7c044e8d302c8561890888619920c1 Mon Sep 17 00:00:00 2001 From: Gabriel Fonseca Date: Wed, 13 Jul 2022 10:59:48 -0300 Subject: [PATCH 01/28] chore(rdkafka): add flush method --- src/Producer/Poll.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Producer/Poll.php b/src/Producer/Poll.php index 0f65815e..600d9d98 100644 --- a/src/Producer/Poll.php +++ b/src/Producer/Poll.php @@ -76,6 +76,8 @@ public function flushMessage(): void for ($flushAttempts = 0; $flushAttempts < $this->maxFlushAttempts; $flushAttempts++) { if (0 === $this->producer->poll($this->timeout)) { + flush(); + return; } From b47c470adf629d3a0723863c519f08ee5893d65a Mon Sep 17 00:00:00 2001 From: Gabriel Fonseca Date: Wed, 13 Jul 2022 16:55:50 -0300 Subject: [PATCH 02/28] chore(rdkafka): update kmv library --- composer.json | 2 +- composer.lock | 40 ++++++++++++++++++++-------------------- src/Producer/Poll.php | 4 +--- 3 files changed, 22 insertions(+), 24 deletions(-) diff --git a/composer.json b/composer.json index 28df9049..ec036609 100644 --- a/composer.json +++ b/composer.json @@ -20,7 +20,7 @@ "leroy-merlin-br/coding-standard": "^1.0.1", "phpunit/phpunit": "^9.4.3", "mockery/mockery": "^1.3.0", - "kwn/php-rdkafka-stubs": "~1.1.0", + "kwn/php-rdkafka-stubs": "^2.2.0", "orchestra/testbench": "^6.0", "dms/phpunit-arraysubset-asserts": "^0.2.1", "phpro/grumphp": "^1.5", diff --git a/composer.lock b/composer.lock index a5b88475..2b3c8e69 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": "6f57d9ed1bb3086e3155d3ac4204fdfe", + "content-hash": "444a711d7f5153ce611e44ee7a13b484", "packages": [ { "name": "brick/math", @@ -749,16 +749,16 @@ }, { "name": "laravel/framework", - "version": "v8.83.18", + "version": "v8.83.19", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "db8188e9cc8359a5c6706fa9d9f55aad7f235077" + "reference": "4264f2ee12330bdb1be050998f58ba7271236395" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/framework/zipball/db8188e9cc8359a5c6706fa9d9f55aad7f235077", - "reference": "db8188e9cc8359a5c6706fa9d9f55aad7f235077", + "url": "https://github.com/gitapi/repos/laravel/framework/zipball/4264f2ee12330bdb1be050998f58ba7271236395", + "reference": "4264f2ee12330bdb1be050998f58ba7271236395", "shasum": "" }, "require": { @@ -918,7 +918,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-06-28T14:30:38+00:00" + "time": "2022-07-13T13:23:09+00:00" }, { "name": "laravel/serializable-closure", @@ -5113,16 +5113,16 @@ }, { "name": "amphp/process", - "version": "v1.1.3", + "version": "v1.1.4", "source": { "type": "git", "url": "https://github.com/amphp/process.git", - "reference": "f09e3ed3b0a953ccbfff1140f12be4a884f0aa83" + "reference": "76e9495fd6818b43a20167cb11d8a67f7744ee0f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/amphp/process/zipball/f09e3ed3b0a953ccbfff1140f12be4a884f0aa83", - "reference": "f09e3ed3b0a953ccbfff1140f12be4a884f0aa83", + "url": "https://github.com/gitapi/repos/amphp/process/zipball/76e9495fd6818b43a20167cb11d8a67f7744ee0f", + "reference": "76e9495fd6818b43a20167cb11d8a67f7744ee0f", "shasum": "" }, "require": { @@ -5166,7 +5166,7 @@ "homepage": "https://github.com/amphp/process", "support": { "issues": "https://github.com/amphp/process/issues", - "source": "https://github.com/amphp/process/tree/v1.1.3" + "source": "https://github.com/amphp/process/tree/v1.1.4" }, "funding": [ { @@ -5174,7 +5174,7 @@ "type": "github" } ], - "time": "2021-12-17T19:09:33+00:00" + "time": "2022-07-06T23:50:12+00:00" }, { "name": "amphp/serialization", @@ -6184,23 +6184,23 @@ }, { "name": "kwn/php-rdkafka-stubs", - "version": "1.1.1", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/kwn/php-rdkafka-stubs.git", - "reference": "7084dd5973d5ef72b5312edae41553ded3d38bb3" + "reference": "68f59168246cff1b64bf750f6ef8624f6a2defeb" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/kwn/php-rdkafka-stubs/zipball/7084dd5973d5ef72b5312edae41553ded3d38bb3", - "reference": "7084dd5973d5ef72b5312edae41553ded3d38bb3", + "url": "https://github.com/gitapi/repos/kwn/php-rdkafka-stubs/zipball/68f59168246cff1b64bf750f6ef8624f6a2defeb", + "reference": "68f59168246cff1b64bf750f6ef8624f6a2defeb", "shasum": "" }, "require": { - "ext-rdkafka": "*" + "ext-rdkafka": ">=4.0" }, "require-dev": { - "phpunit/phpunit": "^4.8" + "phpunit/phpunit": "^8.2.4" }, "type": "library", "notification-url": "https://packagist.org/downloads/", @@ -6216,9 +6216,9 @@ "description": "Rdkafka extension stubs for your IDE", "support": { "issues": "https://github.com/kwn/php-rdkafka-stubs/issues", - "source": "https://github.com/kwn/php-rdkafka-stubs/tree/master" + "source": "https://github.com/kwn/php-rdkafka-stubs/tree/v2.2.0" }, - "time": "2018-03-13T19:02:21+00:00" + "time": "2021-12-03T21:08:51+00:00" }, { "name": "leroy-merlin-br/coding-standard", diff --git a/src/Producer/Poll.php b/src/Producer/Poll.php index 600d9d98..6f770363 100644 --- a/src/Producer/Poll.php +++ b/src/Producer/Poll.php @@ -75,9 +75,7 @@ public function flushMessage(): void } for ($flushAttempts = 0; $flushAttempts < $this->maxFlushAttempts; $flushAttempts++) { - if (0 === $this->producer->poll($this->timeout)) { - flush(); - + if (0 === $this->producer->flush($this->timeout)) { return; } From 760ac990eb93dee6445afe8a7cef6d0a3da1201c Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Wed, 14 Sep 2022 17:14:19 -0300 Subject: [PATCH 03/28] test(rdkafka): adjust tests to expect flush method --- tests/Integration/ProducerWithAvroTest.php | 1 + tests/Unit/Producer/PollTest.php | 10 +- tests/Unit/ProducerTest.php | 210 ++++++++++----------- 3 files changed, 108 insertions(+), 113 deletions(-) diff --git a/tests/Integration/ProducerWithAvroTest.php b/tests/Integration/ProducerWithAvroTest.php index 0e7a0c7c..5a1aa06c 100644 --- a/tests/Integration/ProducerWithAvroTest.php +++ b/tests/Integration/ProducerWithAvroTest.php @@ -21,6 +21,7 @@ public function testShouldRunAProducerMessagesWithAAvroSchema(): void // When I $this->haveSomeRandomMessagesProduced(); + $this->expectNotToPerformAssertions(); } protected function haveAHandlerConfigured(): void diff --git a/tests/Unit/Producer/PollTest.php b/tests/Unit/Producer/PollTest.php index b2b72a90..2f3910da 100644 --- a/tests/Unit/Producer/PollTest.php +++ b/tests/Unit/Producer/PollTest.php @@ -26,7 +26,7 @@ public function testItShouldHandleMessageWithoutAcknowledgment(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations - $kafkaProducer->shouldReceive('poll') + $kafkaProducer->shouldReceive('flush') ->never(); // Actions @@ -51,8 +51,8 @@ public function testShouldThrowExceptionWhenFlushFailed(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations - $kafkaProducer->expects() - ->poll(4000) + $kafkaProducer->expects('flush') + ->with(4000) ->times(10) ->andReturn(1); @@ -79,8 +79,8 @@ public function testItShouldHandleResponseEveryTimeWhenAsyncModeIsTrue(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations - $kafkaProducer->expects() - ->poll(4000) + $kafkaProducer->expects('flush') + ->with(4000) ->times(3) ->andReturn(0); diff --git a/tests/Unit/ProducerTest.php b/tests/Unit/ProducerTest.php index bdf9806b..8c5bcf5c 100644 --- a/tests/Unit/ProducerTest.php +++ b/tests/Unit/ProducerTest.php @@ -41,36 +41,35 @@ public function testItShouldProduceRecordAsArrayThroughMiddlewareQueue(): void }; // Expectations - $config->expects() - ->makeByTopic($topic) + $config->expects('makeByTopic') + ->with($topic) ->andReturn($configManager); - $configManager->expects() - ->middlewares() + $configManager->expects('middlewares') + ->withNoArgs() ->andReturn([]); - $configManager->expects() - ->get('topic_id') + $configManager->expects('get') + ->with('topic_id') ->andReturn($topic); - $configManager->expects() - ->get('partition') + $configManager->expects('get') + ->with('partition') ->andReturn(0); - $configManager->expects() - ->get('timeout') + $configManager->expects('get') + ->with('timeout') ->andReturn(1000); - $connector->expects() - ->getProducerTopic($producerHandler, $configManager) + $connector->expects('getProducerTopic') + ->with($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects() - ->newTopic($topic) + $kafkaProducer->expects('newTopic') + ->with($topic) ->andReturn($producerTopic); - $producerMiddleware->expects() - ->process() + $producerMiddleware->expects('process') ->withAnyArgs(); // Actions @@ -98,39 +97,35 @@ public function testItShouldProduceRecordAsStringThroughMiddlewareQueue(): void }; // Expectations - $config->expects() - ->makeByTopic($topic) + $config->expects('makeByTopic') + ->with($topic) ->andReturn($configManager); - $configManager->expects() - ->middlewares() + $configManager->expects('middlewares') + ->withNoArgs() ->andReturn([]); - $configManager->expects() - ->get('topic_id') + $configManager->expects('get') + ->with('topic_id') ->andReturn($topic); - $configManager->expects() - ->get('partition') + $configManager->expects('get') + ->with('partition') ->andReturn(0); - $connector->expects() - ->getProducerTopic($producerHandler, $configManager) + $connector->expects('getProducerTopic') + ->with($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects() - ->newTopic($topic) + $kafkaProducer->expects('newTopic') + ->with($topic) ->andReturn($producerTopic); - $producerMiddleware->expects() - ->process() + $producerMiddleware->expects('process') ->withAnyArgs(); // Actions - $result = $producer->produce($producerHandler); - - // Assertions - $this->assertNull($result); + $producer->produce($producerHandler); } public function testItShouldThrowJsonExceptionWhenPassingMalFormattedArray(): void @@ -153,56 +148,55 @@ public function testItShouldThrowJsonExceptionWhenPassingMalFormattedArray(): vo }; // Expectations - $configManager->expects() - ->middlewares() + $configManager->expects('middlewares') + ->withNoArgs() ->andReturn([]); - $configManager->expects() - ->get('topic_id') + $configManager->expects('get') + ->with('topic_id') ->andReturn($topic); - $configManager->expects() - ->get('partition') + $configManager->expects('get') + ->with('partition') ->andReturn(0); - $configManager->expects() - ->get('max_poll_records') + $configManager->expects('get') + ->with('max_poll_records') ->andReturn(500); - $configManager->expects() - ->get('required_acknowledgment') + $configManager->expects('get') + ->with('required_acknowledgment') ->andReturn(true); - $configManager->expects() - ->get('flush_attempts') + $configManager->expects('get') + ->with('flush_attempts') ->andReturn(1); - $configManager->expects() - ->get('timeout') + $configManager->expects('get') + ->with('timeout') ->andReturn(1000); - $configManager->expects() - ->get('is_async') + $configManager->expects('get') + ->with('is_async') ->andReturn(false); - $config->expects() - ->makeByTopic($topic) + $config->expects('makeByTopic') + ->with($topic) ->andReturn($configManager); - $connector->expects() - ->getProducerTopic($producerHandler, $configManager) + $connector->expects('getProducerTopic') + ->with($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects() - ->newTopic($topic) + $kafkaProducer->expects('newTopic') + ->with($topic) ->andReturn($producerTopic); - $kafkaProducer->expects() - ->poll(1000) + $kafkaProducer->expects('flush') + ->with(1000) ->andReturn(0); - $producerMiddleware->expects() - ->process() + $producerMiddleware->expects('process') ->never(); $this->expectException(JsonException::class); @@ -229,52 +223,52 @@ public function testShouldBuildDispatcher(): void }; // Expectations - $config->expects() - ->makeByTopic($topic) + $config->expects('makeByTopic') + ->with($topic) ->andReturn($configManager); - $configManager->expects() - ->middlewares() + $configManager->expects('middlewares') + ->withNoArgs() ->andReturn([]); - $configManager->expects() - ->get('topic_id') + $configManager->expects('get') + ->with('topic_id') ->andReturn($topic); - $configManager->expects() - ->get('partition') + $configManager->expects('get') + ->with('partition') ->andReturn(0); - $configManager->expects() - ->get('max_poll_records') + $configManager->expects('get') + ->with('max_poll_records') ->andReturn(500); - $configManager->expects() - ->get('is_async') + $configManager->expects('get') + ->with('is_async') ->andReturn(true); - $configManager->expects() - ->get('required_acknowledgment') + $configManager->expects('get') + ->with('required_acknowledgment') ->andReturn(true); - $configManager->expects() - ->get('flush_attempts') + $configManager->expects('get') + ->with('flush_attempts') ->andReturn(1); - $configManager->expects() - ->get('timeout') + $configManager->expects('get') + ->with('timeout') ->andReturn(1000); - $connector->expects() - ->getProducerTopic($producerHandler, $configManager) + $connector->expects('getProducerTopic') + ->with($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects() - ->newTopic($topic) + $kafkaProducer->expects('newTopic') + ->with($topic) ->andReturn($producerTopic); - $kafkaProducer->expects() - ->poll(1000) + $kafkaProducer->expects('flush') + ->with(1000) ->andReturn(0); // Actions @@ -303,52 +297,52 @@ public function testShouldBuildDispatcherWithConfigOptions(): void }; // Expectations - $config->expects() - ->make($configOptions) + $config->expects('make') + ->with($configOptions) ->andReturn($configManager); - $configManager->expects() - ->middlewares() + $configManager->expects('middlewares') + ->withNoArgs() ->andReturn([]); - $configManager->expects() - ->get('topic_id') + $configManager->expects('get') + ->with('topic_id') ->andReturn($topicId); - $configManager->expects() - ->get('partition') + $configManager->expects('get') + ->with('partition') ->andReturn(0); - $configManager->expects() - ->get('max_poll_records') + $configManager->expects('get') + ->with('max_poll_records') ->andReturn(500); - $configManager->expects() - ->get('is_async') + $configManager->expects('get') + ->with('is_async') ->andReturn(true); - $configManager->expects() - ->get('required_acknowledgment') + $configManager->expects('get') + ->with('required_acknowledgment') ->andReturn(true); - $configManager->expects() - ->get('flush_attempts') + $configManager->expects('get') + ->with('flush_attempts') ->andReturn(1); - $configManager->expects() - ->get('timeout') + $configManager->expects('get') + ->with('timeout') ->andReturn(1000); - $connector->expects() - ->getProducerTopic($producerHandler, $configManager) + $connector->expects('getProducerTopic') + ->with($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects() - ->newTopic($topicId) + $kafkaProducer->expects('newTopic') + ->with($topicId) ->andReturn($producerTopic); - $kafkaProducer->expects() - ->poll(1000) + $kafkaProducer->expects('flush') + ->with(1000) ->andReturn(0); // Actions From 7bfa79a33dd4da3e5423e8d1680884ff25f70330 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Wed, 14 Sep 2022 17:18:15 -0300 Subject: [PATCH 04/28] chore(rdkafka): require lib greater or equals than version 4 --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index ec036609..4cca36f4 100644 --- a/composer.json +++ b/composer.json @@ -7,7 +7,7 @@ ], "description": "Kafka package for laravel applications", "require": { - "ext-rdkafka": "*", + "ext-rdkafka": ">=4.0", "ext-json": "*", "guzzlehttp/guzzle": "^6.5.0 || ^7.0", "illuminate/support": "^5.5 || ^6.0 || ^7.0 || ^8.0", From 1777348211a09ff7797557b22f6b7cbf3302797f Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Wed, 14 Sep 2022 17:25:25 -0300 Subject: [PATCH 05/28] test(producer): set partition to -1 to validate high level test --- tests/Integration/ProducerTest.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/Integration/ProducerTest.php b/tests/Integration/ProducerTest.php index d642b21b..a0bd7b5a 100644 --- a/tests/Integration/ProducerTest.php +++ b/tests/Integration/ProducerTest.php @@ -35,6 +35,7 @@ public function testShouldRunAProducerAndReceiveMessagesWithAHighLevelConsumer() { // Given That I $this->haveAConsumerHandlerConfigured(); + $this->haveNoPartitionConfigured(); $this->haveSomeRandomMessagesProduced(); // I Expect That @@ -180,4 +181,9 @@ private function haveFourProducedMessages(): void $this->produceRecordMessage($this->firstLowLevelMessage); $this->produceRecordMessage($this->secondLowLevelMessage); } + + private function haveNoPartitionConfigured(): void + { + config(['kafka.topics.default.consumer.consumer_groups.test-consumer-group.partition' => -1]); + } } From 3ffa5c19ca1aeaa83a1d4bf8c0adb87add758305 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Wed, 14 Sep 2022 17:26:02 -0300 Subject: [PATCH 06/28] test: fix kafka connection warnings --- tests/Unit/Connectors/Consumer/FactoryTest.php | 2 +- tests/Unit/Connectors/Consumer/HighLevelTest.php | 2 +- tests/Unit/Connectors/Consumer/LowLevelTest.php | 2 +- tests/Unit/Console/ConsumerCommandTest.php | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/Unit/Connectors/Consumer/FactoryTest.php b/tests/Unit/Connectors/Consumer/FactoryTest.php index 8080d39d..2f96f3c6 100644 --- a/tests/Unit/Connectors/Consumer/FactoryTest.php +++ b/tests/Unit/Connectors/Consumer/FactoryTest.php @@ -18,7 +18,7 @@ protected function setUp(): void 'kafka' => [ 'brokers' => [ 'default' => [ - 'connections' => 'kafka:123', + 'connections' => 'kafka:9092', ], ], 'topics' => [ diff --git a/tests/Unit/Connectors/Consumer/HighLevelTest.php b/tests/Unit/Connectors/Consumer/HighLevelTest.php index 1afca75f..b4f40987 100644 --- a/tests/Unit/Connectors/Consumer/HighLevelTest.php +++ b/tests/Unit/Connectors/Consumer/HighLevelTest.php @@ -13,7 +13,7 @@ public function testItShouldMakeConnectorSetup(): void // Set $configManager = new ConsumerConfigManager(); $configManager->set([ - 'connections' => 'kafka:123', + 'connections' => 'kafka:9092', 'consumer_group' => 'some-group', 'topic_id' => 'some_topic', 'offset_reset' => 'earliest', diff --git a/tests/Unit/Connectors/Consumer/LowLevelTest.php b/tests/Unit/Connectors/Consumer/LowLevelTest.php index 93394fce..e3e00a0c 100644 --- a/tests/Unit/Connectors/Consumer/LowLevelTest.php +++ b/tests/Unit/Connectors/Consumer/LowLevelTest.php @@ -13,7 +13,7 @@ public function testItShouldMakeConnectorSetup(): void // Set $configManager = new ConsumerConfigManager(); $configManager->set([ - 'connections' => 'kafka:123', + 'connections' => 'kafka:9092', 'consumer_group' => 'some-group', 'topic' => 'some_topic', 'offset_reset' => 'earliest', diff --git a/tests/Unit/Console/ConsumerCommandTest.php b/tests/Unit/Console/ConsumerCommandTest.php index 566237fa..7da7ecee 100644 --- a/tests/Unit/Console/ConsumerCommandTest.php +++ b/tests/Unit/Console/ConsumerCommandTest.php @@ -17,7 +17,7 @@ protected function setUp(): void 'kafka' => [ 'brokers' => [ 'default' => [ - 'connections' => 'test_kafka:6680', + 'connections' => 'kafka:9092', 'auth' => [], ], ], From 604a344fd32f64f703f9bcc8b9c023e0d1085380 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Thu, 15 Sep 2022 08:23:30 -0300 Subject: [PATCH 07/28] chore(psalm): ignore tests --- grumphp.yml | 1 + tests/Unit/Producer/PollTest.php | 8 +- tests/Unit/ProducerTest.php | 205 ++++++++++++++++--------------- 3 files changed, 109 insertions(+), 105 deletions(-) diff --git a/grumphp.yml b/grumphp.yml index 880affc2..f4d4df5d 100644 --- a/grumphp.yml +++ b/grumphp.yml @@ -11,6 +11,7 @@ grumphp: standard: [ phpcs.xml ] psalm: config: psalm.xml + ignore_patterns: [ 'tests' ] threads: 4 git_commit_message: enforce_capitalized_subject: false diff --git a/tests/Unit/Producer/PollTest.php b/tests/Unit/Producer/PollTest.php index 2f3910da..c6b41336 100644 --- a/tests/Unit/Producer/PollTest.php +++ b/tests/Unit/Producer/PollTest.php @@ -51,8 +51,8 @@ public function testShouldThrowExceptionWhenFlushFailed(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations - $kafkaProducer->expects('flush') - ->with(4000) + $kafkaProducer->expects() + ->flush(4000) ->times(10) ->andReturn(1); @@ -79,8 +79,8 @@ public function testItShouldHandleResponseEveryTimeWhenAsyncModeIsTrue(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations - $kafkaProducer->expects('flush') - ->with(4000) + $kafkaProducer->expects() + ->flush(4000) ->times(3) ->andReturn(0); diff --git a/tests/Unit/ProducerTest.php b/tests/Unit/ProducerTest.php index 8c5bcf5c..df3460d8 100644 --- a/tests/Unit/ProducerTest.php +++ b/tests/Unit/ProducerTest.php @@ -41,35 +41,36 @@ public function testItShouldProduceRecordAsArrayThroughMiddlewareQueue(): void }; // Expectations - $config->expects('makeByTopic') - ->with($topic) + $config->expects() + ->makeByTopic($topic) ->andReturn($configManager); - $configManager->expects('middlewares') - ->withNoArgs() + $configManager->expects() + ->middlewares() ->andReturn([]); - $configManager->expects('get') - ->with('topic_id') + $configManager->expects() + ->get('topic_id') ->andReturn($topic); - $configManager->expects('get') - ->with('partition') + $configManager->expects() + ->get('partition') ->andReturn(0); - $configManager->expects('get') - ->with('timeout') + $configManager->expects() + ->get('timeout') ->andReturn(1000); - $connector->expects('getProducerTopic') - ->with($producerHandler, $configManager) + $connector->expects() + ->getProducerTopic($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects('newTopic') - ->with($topic) + $kafkaProducer->expects() + ->newTopic($topic) ->andReturn($producerTopic); - $producerMiddleware->expects('process') + $producerMiddleware->expects() + ->process() ->withAnyArgs(); // Actions @@ -97,31 +98,32 @@ public function testItShouldProduceRecordAsStringThroughMiddlewareQueue(): void }; // Expectations - $config->expects('makeByTopic') - ->with($topic) + $config->expects() + ->makeByTopic($topic) ->andReturn($configManager); - $configManager->expects('middlewares') - ->withNoArgs() + $configManager->expects() + ->middlewares() ->andReturn([]); - $configManager->expects('get') - ->with('topic_id') + $configManager->expects() + ->get('topic_id') ->andReturn($topic); - $configManager->expects('get') - ->with('partition') + $configManager->expects() + ->get('partition') ->andReturn(0); - $connector->expects('getProducerTopic') - ->with($producerHandler, $configManager) + $connector->expects() + ->getProducerTopic($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects('newTopic') - ->with($topic) + $kafkaProducer->expects() + ->newTopic($topic) ->andReturn($producerTopic); - $producerMiddleware->expects('process') + $producerMiddleware->expects() + ->process() ->withAnyArgs(); // Actions @@ -148,55 +150,56 @@ public function testItShouldThrowJsonExceptionWhenPassingMalFormattedArray(): vo }; // Expectations - $configManager->expects('middlewares') - ->withNoArgs() + $configManager->expects() + ->middlewares() ->andReturn([]); - $configManager->expects('get') - ->with('topic_id') + $configManager->expects() + ->get('topic_id') ->andReturn($topic); - $configManager->expects('get') - ->with('partition') + $configManager->expects() + ->get('partition') ->andReturn(0); - $configManager->expects('get') - ->with('max_poll_records') + $configManager->expects() + ->get('max_poll_records') ->andReturn(500); - $configManager->expects('get') - ->with('required_acknowledgment') + $configManager->expects() + ->get('required_acknowledgment') ->andReturn(true); - $configManager->expects('get') - ->with('flush_attempts') + $configManager->expects() + ->get('flush_attempts') ->andReturn(1); - $configManager->expects('get') - ->with('timeout') + $configManager->expects() + ->get('timeout') ->andReturn(1000); - $configManager->expects('get') - ->with('is_async') + $configManager->expects() + ->get('is_async') ->andReturn(false); - $config->expects('makeByTopic') - ->with($topic) + $config->expects() + ->makeByTopic($topic) ->andReturn($configManager); - $connector->expects('getProducerTopic') - ->with($producerHandler, $configManager) + $connector->expects() + ->getProducerTopic($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects('newTopic') - ->with($topic) + $kafkaProducer->expects() + ->newTopic($topic) ->andReturn($producerTopic); - $kafkaProducer->expects('flush') - ->with(1000) + $kafkaProducer->expects() + ->flush(1000) ->andReturn(0); - $producerMiddleware->expects('process') + $producerMiddleware->expects() + ->process() ->never(); $this->expectException(JsonException::class); @@ -223,52 +226,52 @@ public function testShouldBuildDispatcher(): void }; // Expectations - $config->expects('makeByTopic') - ->with($topic) + $config->expects() + ->makeByTopic($topic) ->andReturn($configManager); - $configManager->expects('middlewares') - ->withNoArgs() + $configManager->expects() + ->middlewares() ->andReturn([]); - $configManager->expects('get') - ->with('topic_id') + $configManager->expects() + ->get('topic_id') ->andReturn($topic); - $configManager->expects('get') - ->with('partition') + $configManager->expects() + ->get('partition') ->andReturn(0); - $configManager->expects('get') - ->with('max_poll_records') + $configManager->expects() + ->get('max_poll_records') ->andReturn(500); - $configManager->expects('get') - ->with('is_async') + $configManager->expects() + ->get('is_async') ->andReturn(true); - $configManager->expects('get') - ->with('required_acknowledgment') + $configManager->expects() + ->get('required_acknowledgment') ->andReturn(true); - $configManager->expects('get') - ->with('flush_attempts') + $configManager->expects() + ->get('flush_attempts') ->andReturn(1); - $configManager->expects('get') - ->with('timeout') + $configManager->expects() + ->get('timeout') ->andReturn(1000); - $connector->expects('getProducerTopic') - ->with($producerHandler, $configManager) + $connector->expects() + ->getProducerTopic($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects('newTopic') - ->with($topic) + $kafkaProducer->expects() + ->newTopic($topic) ->andReturn($producerTopic); - $kafkaProducer->expects('flush') - ->with(1000) + $kafkaProducer->expects() + ->flush(1000) ->andReturn(0); // Actions @@ -297,52 +300,52 @@ public function testShouldBuildDispatcherWithConfigOptions(): void }; // Expectations - $config->expects('make') - ->with($configOptions) + $config->expects() + ->make($configOptions) ->andReturn($configManager); - $configManager->expects('middlewares') - ->withNoArgs() + $configManager->expects() + ->middlewares() ->andReturn([]); - $configManager->expects('get') - ->with('topic_id') + $configManager->expects() + ->get('topic_id') ->andReturn($topicId); - $configManager->expects('get') - ->with('partition') + $configManager->expects() + ->get('partition') ->andReturn(0); - $configManager->expects('get') - ->with('max_poll_records') + $configManager->expects() + ->get('max_poll_records') ->andReturn(500); - $configManager->expects('get') - ->with('is_async') + $configManager->expects() + ->get('is_async') ->andReturn(true); - $configManager->expects('get') - ->with('required_acknowledgment') + $configManager->expects() + ->get('required_acknowledgment') ->andReturn(true); - $configManager->expects('get') - ->with('flush_attempts') + $configManager->expects() + ->get('flush_attempts') ->andReturn(1); - $configManager->expects('get') - ->with('timeout') + $configManager->expects() + ->get('timeout') ->andReturn(1000); - $connector->expects('getProducerTopic') - ->with($producerHandler, $configManager) + $connector->expects() + ->getProducerTopic($producerHandler, $configManager) ->andReturn($kafkaProducer); - $kafkaProducer->expects('newTopic') - ->with($topicId) + $kafkaProducer->expects() + ->newTopic($topicId) ->andReturn($producerTopic); - $kafkaProducer->expects('flush') - ->with(1000) + $kafkaProducer->expects() + ->flush(1000) ->andReturn(0); // Actions From a5560727d5b9afd20c7526be9fddd7e0bbfedcac Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Thu, 15 Sep 2022 08:40:51 -0300 Subject: [PATCH 08/28] chore: bump dependecies --- composer.json | 2 +- composer.lock | 1238 ++++++++++++++++++++++++++++----------------- docker/Dockerfile | 2 +- 3 files changed, 774 insertions(+), 468 deletions(-) diff --git a/composer.json b/composer.json index 4cca36f4..c146253b 100644 --- a/composer.json +++ b/composer.json @@ -13,7 +13,7 @@ "illuminate/support": "^5.5 || ^6.0 || ^7.0 || ^8.0", "illuminate/console": "^5.5 || ^6.0 || ^7.0 || ^8.0", "illuminate/config": "^5.5 || ^6.0 || ^7.0 || ^8.0", - "php": ">=7.1", + "php": ">=7.4", "wikimedia/avro": "^1.7" }, "require-dev": { diff --git a/composer.lock b/composer.lock index 2b3c8e69..07f9f646 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": "444a711d7f5153ce611e44ee7a13b484", + "content-hash": "04d9d60bb62fd311c7dcfda058b5a296", "packages": [ { "name": "brick/math", @@ -66,30 +66,105 @@ ], "time": "2021-08-15T20:50:18+00:00" }, + { + "name": "dflydev/dot-access-data", + "version": "v3.0.1", + "source": { + "type": "git", + "url": "https://github.com/dflydev/dflydev-dot-access-data.git", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.42", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", + "scrutinizer/ocular": "1.6.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^3.14" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Dflydev\\DotAccessData\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dragonfly Development Inc.", + "email": "info@dflydev.com", + "homepage": "http://dflydev.com" + }, + { + "name": "Beau Simensen", + "email": "beau@dflydev.com", + "homepage": "http://beausimensen.com" + }, + { + "name": "Carlos Frutos", + "email": "carlos@kiwing.it", + "homepage": "https://github.com/cfrutos" + }, + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com" + } + ], + "description": "Given a deep data structure, access data by dot notation.", + "homepage": "https://github.com/dflydev/dflydev-dot-access-data", + "keywords": [ + "access", + "data", + "dot", + "notation" + ], + "support": { + "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" + }, + "time": "2021-08-13T13:06:58+00:00" + }, { "name": "doctrine/inflector", - "version": "2.0.4", + "version": "2.0.5", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89" + "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", - "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", + "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", + "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", "shasum": "" }, "require": { "php": "^7.2 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^8.2", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpstan/phpstan-strict-rules": "^0.12", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", - "vimeo/psalm": "^4.10" + "doctrine/coding-standard": "^9", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.3", + "phpunit/phpunit": "^8.5 || ^9.5", + "vimeo/psalm": "^4.25" }, "type": "library", "autoload": { @@ -139,7 +214,7 @@ ], "support": { "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.4" + "source": "https://github.com/doctrine/inflector/tree/2.0.5" }, "funding": [ { @@ -155,7 +230,7 @@ "type": "tidelift" } ], - "time": "2021-10-22T20:16:43+00:00" + "time": "2022-09-07T09:01:28+00:00" }, { "name": "doctrine/lexer", @@ -235,16 +310,16 @@ }, { "name": "dragonmantank/cron-expression", - "version": "v3.3.1", + "version": "v3.3.2", "source": { "type": "git", "url": "https://github.com/dragonmantank/cron-expression.git", - "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa" + "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/dragonmantank/cron-expression/zipball/be85b3f05b46c39bbc0d95f6c071ddff669510fa", - "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa", + "url": "https://github.com/gitapi/repos/dragonmantank/cron-expression/zipball/782ca5968ab8b954773518e9e49a6f892a34b2a8", + "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8", "shasum": "" }, "require": { @@ -284,7 +359,7 @@ ], "support": { "issues": "https://github.com/dragonmantank/cron-expression/issues", - "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.1" + "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.2" }, "funding": [ { @@ -292,7 +367,7 @@ "type": "github" } ], - "time": "2022-01-18T15:43:28+00:00" + "time": "2022-09-10T18:51:20+00:00" }, { "name": "egulias/email-validator", @@ -364,24 +439,24 @@ }, { "name": "graham-campbell/result-type", - "version": "v1.0.4", + "version": "v1.1.0", "source": { "type": "git", "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "0690bde05318336c7221785f2a932467f98b64ca" + "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/GrahamCampbell/Result-Type/zipball/0690bde05318336c7221785f2a932467f98b64ca", - "reference": "0690bde05318336c7221785f2a932467f98b64ca", + "url": "https://github.com/gitapi/repos/GrahamCampbell/Result-Type/zipball/a878d45c1914464426dc94da61c9e1d36ae262a8", + "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8", "shasum": "" }, "require": { - "php": "^7.0 || ^8.0", - "phpoption/phpoption": "^1.8" + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9" }, "require-dev": { - "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" + "phpunit/phpunit": "^8.5.28 || ^9.5.21" }, "type": "library", "autoload": { @@ -410,7 +485,7 @@ ], "support": { "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.4" + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.0" }, "funding": [ { @@ -422,20 +497,20 @@ "type": "tidelift" } ], - "time": "2021-11-21T21:41:47+00:00" + "time": "2022-07-30T15:56:11+00:00" }, { "name": "guzzlehttp/guzzle", - "version": "7.4.5", + "version": "7.5.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "1dd98b0564cb3f6bd16ce683cb755f94c10fbd82" + "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/guzzle/zipball/1dd98b0564cb3f6bd16ce683cb755f94c10fbd82", - "reference": "1dd98b0564cb3f6bd16ce683cb755f94c10fbd82", + "url": "https://github.com/gitapi/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", "shasum": "" }, "require": { @@ -450,10 +525,10 @@ "psr/http-client-implementation": "1.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", + "bamarni/composer-bin-plugin": "^1.8.1", "ext-curl": "*", "php-http/client-integration-tests": "^3.0", - "phpunit/phpunit": "^8.5.5 || ^9.3.5", + "phpunit/phpunit": "^8.5.29 || ^9.5.23", "psr/log": "^1.1 || ^2.0 || ^3.0" }, "suggest": { @@ -463,8 +538,12 @@ }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, "branch-alias": { - "dev-master": "7.4-dev" + "dev-master": "7.5-dev" } }, "autoload": { @@ -530,7 +609,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.4.5" + "source": "https://github.com/guzzle/guzzle/tree/7.5.0" }, "funding": [ { @@ -546,20 +625,20 @@ "type": "tidelift" } ], - "time": "2022-06-20T22:16:13+00:00" + "time": "2022-08-28T15:39:27+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.5.1", + "version": "1.5.2", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da" + "reference": "b94b2807d85443f9719887892882d0329d1e2598" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/promises/zipball/fe752aedc9fd8fcca3fe7ad05d419d32998a06da", - "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da", + "url": "https://github.com/gitapi/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", + "reference": "b94b2807d85443f9719887892882d0329d1e2598", "shasum": "" }, "require": { @@ -614,7 +693,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.1" + "source": "https://github.com/guzzle/promises/tree/1.5.2" }, "funding": [ { @@ -630,20 +709,20 @@ "type": "tidelift" } ], - "time": "2021-10-22T20:56:57+00:00" + "time": "2022-08-28T14:55:35+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.4.0", + "version": "2.4.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "13388f00956b1503577598873fffb5ae994b5737" + "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/13388f00956b1503577598873fffb5ae994b5737", - "reference": "13388f00956b1503577598873fffb5ae994b5737", + "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/69568e4293f4fa993f3b0e51c9723e1e17c41379", + "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379", "shasum": "" }, "require": { @@ -657,15 +736,19 @@ "psr/http-message-implementation": "1.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", + "bamarni/composer-bin-plugin": "^1.8.1", "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.8 || ^9.3.10" + "phpunit/phpunit": "^8.5.29 || ^9.5.23" }, "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, "branch-alias": { "dev-master": "2.4-dev" } @@ -729,7 +812,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.0" + "source": "https://github.com/guzzle/psr7/tree/2.4.1" }, "funding": [ { @@ -745,20 +828,20 @@ "type": "tidelift" } ], - "time": "2022-06-20T21:43:11+00:00" + "time": "2022-08-28T14:45:39+00:00" }, { "name": "laravel/framework", - "version": "v8.83.19", + "version": "v8.83.23", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "4264f2ee12330bdb1be050998f58ba7271236395" + "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/framework/zipball/4264f2ee12330bdb1be050998f58ba7271236395", - "reference": "4264f2ee12330bdb1be050998f58ba7271236395", + "url": "https://github.com/gitapi/repos/laravel/framework/zipball/bdc707f8b9bcad289b24cd182d98ec7480ac4491", + "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491", "shasum": "" }, "require": { @@ -918,29 +1001,30 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-07-13T13:23:09+00:00" + "time": "2022-07-26T13:30:00+00:00" }, { "name": "laravel/serializable-closure", - "version": "v1.2.0", + "version": "v1.2.2", "source": { "type": "git", "url": "https://github.com/laravel/serializable-closure.git", - "reference": "09f0e9fb61829f628205b7c94906c28740ff9540" + "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/serializable-closure/zipball/09f0e9fb61829f628205b7c94906c28740ff9540", - "reference": "09f0e9fb61829f628205b7c94906c28740ff9540", + "url": "https://github.com/gitapi/repos/laravel/serializable-closure/zipball/47afb7fae28ed29057fdca37e16a84f90cc62fae", + "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae", "shasum": "" }, "require": { "php": "^7.3|^8.0" }, "require-dev": { - "pestphp/pest": "^1.18", - "phpstan/phpstan": "^0.12.98", - "symfony/var-dumper": "^5.3" + "nesbot/carbon": "^2.61", + "pestphp/pest": "^1.21.3", + "phpstan/phpstan": "^1.8.2", + "symfony/var-dumper": "^5.4.11" }, "type": "library", "extra": { @@ -977,46 +1061,58 @@ "issues": "https://github.com/laravel/serializable-closure/issues", "source": "https://github.com/laravel/serializable-closure" }, - "time": "2022-05-16T17:09:47+00:00" + "time": "2022-09-08T13:45:54+00:00" }, { "name": "league/commonmark", - "version": "1.6.7", + "version": "2.3.5", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "2b8185c13bc9578367a5bf901881d1c1b5bbd09b" + "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/2b8185c13bc9578367a5bf901881d1c1b5bbd09b", - "reference": "2b8185c13bc9578367a5bf901881d1c1b5bbd09b", + "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/84d74485fdb7074f4f9dd6f02ab957b1de513257", + "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257", "shasum": "" }, "require": { "ext-mbstring": "*", - "php": "^7.1 || ^8.0" - }, - "conflict": { - "scrutinizer/ocular": "1.7.*" + "league/config": "^1.1.1", + "php": "^7.4 || ^8.0", + "psr/event-dispatcher": "^1.0", + "symfony/deprecation-contracts": "^2.1 || ^3.0", + "symfony/polyfill-php80": "^1.16" }, "require-dev": { - "cebe/markdown": "~1.0", - "commonmark/commonmark.js": "0.29.2", - "erusev/parsedown": "~1.0", + "cebe/markdown": "^1.0", + "commonmark/cmark": "0.30.0", + "commonmark/commonmark.js": "0.30.0", + "composer/package-versions-deprecated": "^1.8", + "embed/embed": "^4.4", + "erusev/parsedown": "^1.0", "ext-json": "*", "github/gfm": "0.29.0", - "michelf/php-markdown": "~1.4", - "mikehaertl/php-shellcommand": "^1.4", - "phpstan/phpstan": "^0.12.90", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.2", - "scrutinizer/ocular": "^1.5", - "symfony/finder": "^4.2" + "michelf/php-markdown": "^1.4", + "nyholm/psr7": "^1.5", + "phpstan/phpstan": "^1.8.2", + "phpunit/phpunit": "^9.5.21", + "scrutinizer/ocular": "^1.8.1", + "symfony/finder": "^5.3 | ^6.0", + "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", + "unleashedtech/php-coding-standard": "^3.1.1", + "vimeo/psalm": "^4.24.0" + }, + "suggest": { + "symfony/yaml": "v2.3+ required if using the Front Matter extension" }, - "bin": [ - "bin/commonmark" - ], "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.4-dev" + } + }, "autoload": { "psr-4": { "League\\CommonMark\\": "src" @@ -1034,7 +1130,7 @@ "role": "Lead Developer" } ], - "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and Github-Flavored Markdown (GFM)", + "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", "homepage": "https://commonmark.thephpleague.com", "keywords": [ "commonmark", @@ -1048,6 +1144,7 @@ ], "support": { "docs": "https://commonmark.thephpleague.com/", + "forum": "https://github.com/thephpleague/commonmark/discussions", "issues": "https://github.com/thephpleague/commonmark/issues", "rss": "https://github.com/thephpleague/commonmark/releases.atom", "source": "https://github.com/thephpleague/commonmark" @@ -1070,7 +1167,89 @@ "type": "tidelift" } ], - "time": "2022-01-13T17:18:13+00:00" + "time": "2022-07-29T10:59:45+00:00" + }, + { + "name": "league/config", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/config.git", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^3.0.1", + "nette/schema": "^1.2", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.90", + "phpunit/phpunit": "^9.5.5", + "scrutinizer/ocular": "^1.8.1", + "unleashedtech/php-coding-standard": "^3.1", + "vimeo/psalm": "^4.7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Define configuration arrays with strict schemas and access values with dot notation", + "homepage": "https://config.thephpleague.com", + "keywords": [ + "array", + "config", + "configuration", + "dot", + "dot-access", + "nested", + "schema" + ], + "support": { + "docs": "https://config.thephpleague.com/", + "issues": "https://github.com/thephpleague/config/issues", + "rss": "https://github.com/thephpleague/config/releases.atom", + "source": "https://github.com/thephpleague/config" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + } + ], + "time": "2021-08-14T12:15:32+00:00" }, { "name": "league/flysystem", @@ -1224,16 +1403,16 @@ }, { "name": "monolog/monolog", - "version": "2.7.0", + "version": "2.8.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "5579edf28aee1190a798bfa5be8bc16c563bd524" + "reference": "720488632c590286b88b80e62aa3d3d551ad4a50" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/Seldaek/monolog/zipball/5579edf28aee1190a798bfa5be8bc16c563bd524", - "reference": "5579edf28aee1190a798bfa5be8bc16c563bd524", + "url": "https://github.com/gitapi/repos/Seldaek/monolog/zipball/720488632c590286b88b80e62aa3d3d551ad4a50", + "reference": "720488632c590286b88b80e62aa3d3d551ad4a50", "shasum": "" }, "require": { @@ -1253,11 +1432,10 @@ "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", - "php-console/php-console": "^3.1.3", "phpspec/prophecy": "^1.15", "phpstan/phpstan": "^0.12.91", "phpunit/phpunit": "^8.5.14", - "predis/predis": "^1.1", + "predis/predis": "^1.1 || ^2.0", "rollbar/rollbar": "^1.3 || ^2 || ^3", "ruflin/elastica": "^7", "swiftmailer/swiftmailer": "^5.3|^6.0", @@ -1277,7 +1455,6 @@ "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", - "php-console/php-console": "Allow sending log messages to Google Chrome", "rollbar/rollbar": "Allow sending log messages to Rollbar", "ruflin/elastica": "Allow sending log messages to an Elastic Search server" }, @@ -1312,7 +1489,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/2.7.0" + "source": "https://github.com/Seldaek/monolog/tree/2.8.0" }, "funding": [ { @@ -1324,20 +1501,20 @@ "type": "tidelift" } ], - "time": "2022-06-09T08:59:12+00:00" + "time": "2022-07-24T11:55:47+00:00" }, { "name": "nesbot/carbon", - "version": "2.59.1", + "version": "2.62.1", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "a9000603ea337c8df16cc41f8b6be95a65f4d0f5" + "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/a9000603ea337c8df16cc41f8b6be95a65f4d0f5", - "reference": "a9000603ea337c8df16cc41f8b6be95a65f4d0f5", + "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", + "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", "shasum": "" }, "require": { @@ -1426,7 +1603,154 @@ "type": "tidelift" } ], - "time": "2022-06-29T21:43:55+00:00" + "time": "2022-09-02T07:48:13+00:00" + }, + { + "name": "nette/schema", + "version": "v1.2.2", + "source": { + "type": "git", + "url": "https://github.com/nette/schema.git", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", + "shasum": "" + }, + "require": { + "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", + "php": ">=7.1 <8.2" + }, + "require-dev": { + "nette/tester": "^2.3 || ^2.4", + "phpstan/phpstan-nette": "^0.12", + "tracy/tracy": "^2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "📐 Nette Schema: validating data structures against a given Schema.", + "homepage": "https://nette.org", + "keywords": [ + "config", + "nette" + ], + "support": { + "issues": "https://github.com/nette/schema/issues", + "source": "https://github.com/nette/schema/tree/v1.2.2" + }, + "time": "2021-10-15T11:40:02+00:00" + }, + { + "name": "nette/utils", + "version": "v3.2.8", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/nette/utils/zipball/02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", + "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", + "shasum": "" + }, + "require": { + "php": ">=7.2 <8.3" + }, + "conflict": { + "nette/di": "<3.0.6" + }, + "require-dev": { + "nette/tester": "~2.0", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.3" + }, + "suggest": { + "ext-gd": "to use Image", + "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", + "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", + "ext-json": "to use Nette\\Utils\\Json", + "ext-mbstring": "to use Strings::lower() etc...", + "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", + "ext-xml": "to use Strings::length() etc. when mbstring is not available" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", + "homepage": "https://nette.org", + "keywords": [ + "array", + "core", + "datetime", + "images", + "json", + "nette", + "paginator", + "password", + "slugify", + "string", + "unicode", + "utf-8", + "utility", + "validation" + ], + "support": { + "issues": "https://github.com/nette/utils/issues", + "source": "https://github.com/nette/utils/tree/v3.2.8" + }, + "time": "2022-09-12T23:36:20+00:00" }, { "name": "opis/closure", @@ -1495,29 +1819,33 @@ }, { "name": "phpoption/phpoption", - "version": "1.8.1", + "version": "1.9.0", "source": { "type": "git", "url": "https://github.com/schmittjoh/php-option.git", - "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15" + "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/schmittjoh/php-option/zipball/eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", - "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", + "url": "https://github.com/gitapi/repos/schmittjoh/php-option/zipball/dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", + "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", "shasum": "" }, "require": { - "php": "^7.0 || ^8.0" + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" + "bamarni/composer-bin-plugin": "^1.8", + "phpunit/phpunit": "^8.5.28 || ^9.5.21" }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": true + }, "branch-alias": { - "dev-master": "1.8-dev" + "dev-master": "1.9-dev" } }, "autoload": { @@ -1550,7 +1878,7 @@ ], "support": { "issues": "https://github.com/schmittjoh/php-option/issues", - "source": "https://github.com/schmittjoh/php-option/tree/1.8.1" + "source": "https://github.com/schmittjoh/php-option/tree/1.9.0" }, "funding": [ { @@ -1562,24 +1890,24 @@ "type": "tidelift" } ], - "time": "2021-12-04T23:24:31+00:00" + "time": "2022-07-30T15:51:26+00:00" }, { "name": "psr/container", - "version": "1.1.1", + "version": "1.1.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", + "url": "https://github.com/gitapi/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", "shasum": "" }, "require": { - "php": ">=7.2.0" + "php": ">=7.4.0" }, "type": "library", "autoload": { @@ -1608,9 +1936,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.1" + "source": "https://github.com/php-fig/container/tree/1.1.2" }, - "time": "2021-03-05T17:36:06+00:00" + "time": "2021-11-05T16:50:12+00:00" }, { "name": "psr/event-dispatcher", @@ -2222,16 +2550,16 @@ }, { "name": "symfony/console", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "4d671ab4ddac94ee439ea73649c69d9d200b5000" + "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/console/zipball/4d671ab4ddac94ee439ea73649c69d9d200b5000", - "reference": "4d671ab4ddac94ee439ea73649c69d9d200b5000", + "url": "https://github.com/gitapi/repos/symfony/console/zipball/c072aa8f724c3af64e2c7a96b796a4863d24dba1", + "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1", "shasum": "" }, "require": { @@ -2301,7 +2629,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.10" + "source": "https://github.com/symfony/console/tree/v5.4.12" }, "funding": [ { @@ -2317,20 +2645,20 @@ "type": "tidelift" } ], - "time": "2022-06-26T13:00:04+00:00" + "time": "2022-08-17T13:18:05+00:00" }, { "name": "symfony/css-selector", - "version": "v5.4.3", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "b0a190285cd95cb019237851205b8140ef6e368e" + "reference": "c1681789f059ab756001052164726ae88512ae3d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/css-selector/zipball/b0a190285cd95cb019237851205b8140ef6e368e", - "reference": "b0a190285cd95cb019237851205b8140ef6e368e", + "url": "https://github.com/gitapi/repos/symfony/css-selector/zipball/c1681789f059ab756001052164726ae88512ae3d", + "reference": "c1681789f059ab756001052164726ae88512ae3d", "shasum": "" }, "require": { @@ -2367,7 +2695,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v5.4.3" + "source": "https://github.com/symfony/css-selector/tree/v5.4.11" }, "funding": [ { @@ -2383,7 +2711,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-06-27T16:58:25+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2454,16 +2782,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.4.9", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "c116cda1f51c678782768dce89a45f13c949455d" + "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/c116cda1f51c678782768dce89a45f13c949455d", - "reference": "c116cda1f51c678782768dce89a45f13c949455d", + "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/f75d17cb4769eb38cd5fccbda95cd80a054d35c8", + "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8", "shasum": "" }, "require": { @@ -2505,7 +2833,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v5.4.9" + "source": "https://github.com/symfony/error-handler/tree/v5.4.11" }, "funding": [ { @@ -2521,7 +2849,7 @@ "type": "tidelift" } ], - "time": "2022-05-21T13:57:48+00:00" + "time": "2022-07-29T07:37:50+00:00" }, { "name": "symfony/event-dispatcher", @@ -2689,16 +3017,16 @@ }, { "name": "symfony/finder", - "version": "v5.4.8", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "9b630f3427f3ebe7cd346c277a1408b00249dad9" + "reference": "7872a66f57caffa2916a584db1aa7f12adc76f8c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/finder/zipball/9b630f3427f3ebe7cd346c277a1408b00249dad9", - "reference": "9b630f3427f3ebe7cd346c277a1408b00249dad9", + "url": "https://github.com/gitapi/repos/symfony/finder/zipball/7872a66f57caffa2916a584db1aa7f12adc76f8c", + "reference": "7872a66f57caffa2916a584db1aa7f12adc76f8c", "shasum": "" }, "require": { @@ -2732,7 +3060,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.8" + "source": "https://github.com/symfony/finder/tree/v5.4.11" }, "funding": [ { @@ -2748,20 +3076,20 @@ "type": "tidelift" } ], - "time": "2022-04-15T08:07:45+00:00" + "time": "2022-07-29T07:37:50+00:00" }, { "name": "symfony/http-foundation", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "e7793b7906f72a8cc51054fbca9dcff7a8af1c1e" + "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/e7793b7906f72a8cc51054fbca9dcff7a8af1c1e", - "reference": "e7793b7906f72a8cc51054fbca9dcff7a8af1c1e", + "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/f4bfe9611b113b15d98a43da68ec9b5a00d56791", + "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791", "shasum": "" }, "require": { @@ -2773,8 +3101,11 @@ "require-dev": { "predis/predis": "~1.0", "symfony/cache": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/mime": "^4.4|^5.0|^6.0" + "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4", + "symfony/mime": "^4.4|^5.0|^6.0", + "symfony/rate-limiter": "^5.2|^6.0" }, "suggest": { "symfony/mime": "To use the file extension guesser" @@ -2805,7 +3136,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.10" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.12" }, "funding": [ { @@ -2821,20 +3152,20 @@ "type": "tidelift" } ], - "time": "2022-06-19T13:13:40+00:00" + "time": "2022-08-19T07:33:17+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "255ae3b0a488d78fbb34da23d3e0c059874b5948" + "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/255ae3b0a488d78fbb34da23d3e0c059874b5948", - "reference": "255ae3b0a488d78fbb34da23d3e0c059874b5948", + "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/37f660fa3bcd78fe4893ce23ebe934618ec099be", + "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be", "shasum": "" }, "require": { @@ -2917,7 +3248,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v5.4.10" + "source": "https://github.com/symfony/http-kernel/tree/v5.4.12" }, "funding": [ { @@ -2933,20 +3264,20 @@ "type": "tidelift" } ], - "time": "2022-06-26T16:57:59+00:00" + "time": "2022-08-26T14:40:40+00:00" }, { "name": "symfony/mime", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "02265e1e5111c3cd7480387af25e82378b7ab9cc" + "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/mime/zipball/02265e1e5111c3cd7480387af25e82378b7ab9cc", - "reference": "02265e1e5111c3cd7480387af25e82378b7ab9cc", + "url": "https://github.com/gitapi/repos/symfony/mime/zipball/03876e9c5a36f5b45e7d9a381edda5421eff8a90", + "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90", "shasum": "" }, "require": { @@ -3000,7 +3331,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.10" + "source": "https://github.com/symfony/mime/tree/v5.4.12" }, "funding": [ { @@ -3016,7 +3347,7 @@ "type": "tidelift" } ], - "time": "2022-06-09T12:22:40+00:00" + "time": "2022-08-19T14:24:03+00:00" }, { "name": "symfony/polyfill-ctype", @@ -3837,16 +4168,16 @@ }, { "name": "symfony/process", - "version": "v5.4.8", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3" + "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/process/zipball/597f3fff8e3e91836bb0bd38f5718b56ddbde2f3", - "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3", + "url": "https://github.com/gitapi/repos/symfony/process/zipball/6e75fe6874cbc7e4773d049616ab450eff537bf1", + "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1", "shasum": "" }, "require": { @@ -3879,7 +4210,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.8" + "source": "https://github.com/symfony/process/tree/v5.4.11" }, "funding": [ { @@ -3895,20 +4226,20 @@ "type": "tidelift" } ], - "time": "2022-04-08T05:07:18+00:00" + "time": "2022-06-27T16:58:25+00:00" }, { "name": "symfony/routing", - "version": "v5.4.8", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "e07817bb6244ea33ef5ad31abc4a9288bef3f2f7" + "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/routing/zipball/e07817bb6244ea33ef5ad31abc4a9288bef3f2f7", - "reference": "e07817bb6244ea33ef5ad31abc4a9288bef3f2f7", + "url": "https://github.com/gitapi/repos/symfony/routing/zipball/3e01ccd9b2a3a4167ba2b3c53612762300300226", + "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226", "shasum": "" }, "require": { @@ -3969,7 +4300,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v5.4.8" + "source": "https://github.com/symfony/routing/tree/v5.4.11" }, "funding": [ { @@ -3985,7 +4316,7 @@ "type": "tidelift" } ], - "time": "2022-04-18T21:45:37+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/service-contracts", @@ -4072,16 +4403,16 @@ }, { "name": "symfony/string", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "4432bc7df82a554b3e413a8570ce2fea90e94097" + "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/string/zipball/4432bc7df82a554b3e413a8570ce2fea90e94097", - "reference": "4432bc7df82a554b3e413a8570ce2fea90e94097", + "url": "https://github.com/gitapi/repos/symfony/string/zipball/2fc515e512d721bf31ea76bd02fe23ada4640058", + "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058", "shasum": "" }, "require": { @@ -4138,7 +4469,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.10" + "source": "https://github.com/symfony/string/tree/v5.4.12" }, "funding": [ { @@ -4154,20 +4485,20 @@ "type": "tidelift" } ], - "time": "2022-06-26T15:57:47+00:00" + "time": "2022-08-12T17:03:11+00:00" }, { "name": "symfony/translation", - "version": "v5.4.9", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "1639abc1177d26bcd4320e535e664cef067ab0ca" + "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/translation/zipball/1639abc1177d26bcd4320e535e664cef067ab0ca", - "reference": "1639abc1177d26bcd4320e535e664cef067ab0ca", + "url": "https://github.com/gitapi/repos/symfony/translation/zipball/42ecc77eb4f229ce2df702a648ec93b8478d76ae", + "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae", "shasum": "" }, "require": { @@ -4235,7 +4566,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.9" + "source": "https://github.com/symfony/translation/tree/v5.4.12" }, "funding": [ { @@ -4251,7 +4582,7 @@ "type": "tidelift" } ], - "time": "2022-05-06T12:33:37+00:00" + "time": "2022-08-02T15:52:22+00:00" }, { "name": "symfony/translation-contracts", @@ -4333,16 +4664,16 @@ }, { "name": "symfony/var-dumper", - "version": "v5.4.9", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "af52239a330fafd192c773795520dc2dd62b5657" + "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/af52239a330fafd192c773795520dc2dd62b5657", - "reference": "af52239a330fafd192c773795520dc2dd62b5657", + "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/b8f306d7b8ef34fb3db3305be97ba8e088fb4861", + "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861", "shasum": "" }, "require": { @@ -4402,7 +4733,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.4.9" + "source": "https://github.com/symfony/var-dumper/tree/v5.4.11" }, "funding": [ { @@ -4418,20 +4749,20 @@ "type": "tidelift" } ], - "time": "2022-05-21T10:24:18+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.4", + "version": "2.2.5", "source": { "type": "git", "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c" + "reference": "4348a3a06651827a27d989ad1d13efec6bb49b19" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/tijsverkoyen/CssToInlineStyles/zipball/da444caae6aca7a19c0c140f68c6182e337d5b1c", - "reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c", + "url": "https://github.com/gitapi/repos/tijsverkoyen/CssToInlineStyles/zipball/4348a3a06651827a27d989ad1d13efec6bb49b19", + "reference": "4348a3a06651827a27d989ad1d13efec6bb49b19", "shasum": "" }, "require": { @@ -4469,9 +4800,9 @@ "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", "support": { "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", - "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.4" + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.5" }, - "time": "2021-12-08T09:12:39+00:00" + "time": "2022-09-12T13:28:28+00:00" }, { "name": "vlucas/phpdotenv", @@ -5001,28 +5332,29 @@ }, { "name": "amphp/parallel-functions", - "version": "v1.0.0", + "version": "v1.1.0", "source": { "type": "git", "url": "https://github.com/amphp/parallel-functions.git", - "reference": "af9795d51abfafc3676cbe7e17965479491abaad" + "reference": "04e92fcacfc921a56dfe12c23b3265e62593a7cb" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/amphp/parallel-functions/zipball/af9795d51abfafc3676cbe7e17965479491abaad", - "reference": "af9795d51abfafc3676cbe7e17965479491abaad", + "url": "https://github.com/gitapi/repos/amphp/parallel-functions/zipball/04e92fcacfc921a56dfe12c23b3265e62593a7cb", + "reference": "04e92fcacfc921a56dfe12c23b3265e62593a7cb", "shasum": "" }, "require": { "amphp/amp": "^2.0.3", - "amphp/parallel": "^1.1", - "opis/closure": "^3.0.7", - "php": ">=7" + "amphp/parallel": "^1.4", + "amphp/serialization": "^1.0", + "laravel/serializable-closure": "^1.0", + "php": ">=7.4" }, "require-dev": { - "amphp/phpunit-util": "^1.0", - "friendsofphp/php-cs-fixer": "^2.9", - "phpunit/phpunit": "^6.5" + "amphp/php-cs-fixer-config": "v2.x-dev", + "amphp/phpunit-util": "^2.0", + "phpunit/phpunit": "^9.5.11" }, "type": "library", "autoload": { @@ -5046,7 +5378,7 @@ "description": "Parallel processing made simple.", "support": { "issues": "https://github.com/amphp/parallel-functions/issues", - "source": "https://github.com/amphp/parallel-functions/tree/master" + "source": "https://github.com/amphp/parallel-functions/tree/v1.1.0" }, "funding": [ { @@ -5054,7 +5386,7 @@ "type": "github" } ], - "time": "2020-07-10T17:05:35+00:00" + "time": "2022-02-03T19:32:41+00:00" }, { "name": "amphp/parser", @@ -5377,20 +5709,20 @@ }, { "name": "composer/pcre", - "version": "2.0.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "c8e9d27cfc5ed22643c19c160455b473ffd8aabe" + "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/composer/pcre/zipball/c8e9d27cfc5ed22643c19c160455b473ffd8aabe", - "reference": "c8e9d27cfc5ed22643c19c160455b473ffd8aabe", + "url": "https://github.com/gitapi/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0" + "php": "^7.4 || ^8.0" }, "require-dev": { "phpstan/phpstan": "^1.3", @@ -5400,7 +5732,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.x-dev" + "dev-main": "3.x-dev" } }, "autoload": { @@ -5428,7 +5760,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/2.0.0" + "source": "https://github.com/composer/pcre/tree/3.0.0" }, "funding": [ { @@ -5444,7 +5776,7 @@ "type": "tidelift" } ], - "time": "2022-02-25T20:05:29+00:00" + "time": "2022-02-25T20:21:48+00:00" }, { "name": "composer/semver", @@ -5752,26 +6084,27 @@ }, { "name": "doctrine/collections", - "version": "1.6.8", + "version": "1.7.3", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "1958a744696c6bb3bb0d28db2611dc11610e78af" + "reference": "09dde3eb237756190f2de738d3c97cff10a8407b" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/1958a744696c6bb3bb0d28db2611dc11610e78af", - "reference": "1958a744696c6bb3bb0d28db2611dc11610e78af", + "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/09dde3eb237756190f2de738d3c97cff10a8407b", + "reference": "09dde3eb237756190f2de738d3c97cff10a8407b", "shasum": "" }, "require": { + "doctrine/deprecations": "^0.5.3 || ^1", "php": "^7.1.3 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9.0", - "phpstan/phpstan": "^0.12", + "doctrine/coding-standard": "^9.0 || ^10.0", + "phpstan/phpstan": "^1.4.8", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.1.5", - "vimeo/psalm": "^4.2.1" + "vimeo/psalm": "^4.22" }, "type": "library", "autoload": { @@ -5815,9 +6148,52 @@ ], "support": { "issues": "https://github.com/doctrine/collections/issues", - "source": "https://github.com/doctrine/collections/tree/1.6.8" + "source": "https://github.com/doctrine/collections/tree/1.7.3" + }, + "time": "2022-09-01T19:34:23+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "v1.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", + "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9", + "phpunit/phpunit": "^7.5|^8.5|^9.5", + "psr/log": "^1|^2|^3" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + } }, - "time": "2021-08-10T18:51:53+00:00" + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/v1.0.0" + }, + "time": "2022-05-02T15:47:09+00:00" }, { "name": "doctrine/instantiator", @@ -5891,16 +6267,16 @@ }, { "name": "fakerphp/faker", - "version": "v1.19.0", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75" + "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/d7f08a622b3346766325488aa32ddc93ccdecc75", - "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75", + "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/37f751c67a5372d4e26353bd9384bc03744ec77b", + "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b", "shasum": "" }, "require": { @@ -5927,7 +6303,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v1.19-dev" + "dev-main": "v1.20-dev" } }, "autoload": { @@ -5952,9 +6328,9 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.19.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.20.0" }, - "time": "2022-02-02T17:38:57+00:00" + "time": "2022-07-20T13:12:54+00:00" }, { "name": "felixfbecker/advanced-json-rpc", @@ -6059,16 +6435,16 @@ }, { "name": "gitonomy/gitlib", - "version": "v1.3.5", + "version": "v1.3.6", "source": { "type": "git", "url": "https://github.com/gitonomy/gitlib.git", - "reference": "793ffe5826c30e64ea499ea9e4bb353dd0892bef" + "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/793ffe5826c30e64ea499ea9e4bb353dd0892bef", - "reference": "793ffe5826c30e64ea499ea9e4bb353dd0892bef", + "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/33ae0a2e469accc19d1a06bed63ed93dbf368ae2", + "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2", "shasum": "" }, "require": { @@ -6121,7 +6497,7 @@ "description": "Library for accessing git", "support": { "issues": "https://github.com/gitonomy/gitlib/issues", - "source": "https://github.com/gitonomy/gitlib/tree/v1.3.5" + "source": "https://github.com/gitonomy/gitlib/tree/v1.3.6" }, "funding": [ { @@ -6129,7 +6505,7 @@ "type": "tidelift" } ], - "time": "2022-03-01T10:56:00+00:00" + "time": "2022-08-05T09:17:13+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -6184,16 +6560,16 @@ }, { "name": "kwn/php-rdkafka-stubs", - "version": "v2.2.0", + "version": "v2.2.1", "source": { "type": "git", "url": "https://github.com/kwn/php-rdkafka-stubs.git", - "reference": "68f59168246cff1b64bf750f6ef8624f6a2defeb" + "reference": "23b865d6b3e8fe1f080aa7371dc1da3339361996" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/kwn/php-rdkafka-stubs/zipball/68f59168246cff1b64bf750f6ef8624f6a2defeb", - "reference": "68f59168246cff1b64bf750f6ef8624f6a2defeb", + "url": "https://github.com/gitapi/repos/kwn/php-rdkafka-stubs/zipball/23b865d6b3e8fe1f080aa7371dc1da3339361996", + "reference": "23b865d6b3e8fe1f080aa7371dc1da3339361996", "shasum": "" }, "require": { @@ -6216,9 +6592,9 @@ "description": "Rdkafka extension stubs for your IDE", "support": { "issues": "https://github.com/kwn/php-rdkafka-stubs/issues", - "source": "https://github.com/kwn/php-rdkafka-stubs/tree/v2.2.0" + "source": "https://github.com/kwn/php-rdkafka-stubs/tree/v2.2.1" }, - "time": "2021-12-03T21:08:51+00:00" + "time": "2022-08-16T15:27:51+00:00" }, { "name": "leroy-merlin-br/coding-standard", @@ -6273,16 +6649,16 @@ }, { "name": "mockery/mockery", - "version": "1.5.0", + "version": "1.5.1", "source": { "type": "git", "url": "https://github.com/mockery/mockery.git", - "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac" + "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/mockery/mockery/zipball/c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", - "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", + "url": "https://github.com/gitapi/repos/mockery/mockery/zipball/e92dcc83d5a51851baf5f5591d32cb2b16e3684e", + "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e", "shasum": "" }, "require": { @@ -6339,9 +6715,9 @@ ], "support": { "issues": "https://github.com/mockery/mockery/issues", - "source": "https://github.com/mockery/mockery/tree/1.5.0" + "source": "https://github.com/mockery/mockery/tree/1.5.1" }, - "time": "2022-01-20T13:18:17+00:00" + "time": "2022-09-07T15:32:08+00:00" }, { "name": "myclabs/deep-copy", @@ -6455,16 +6831,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.14.0", + "version": "v4.15.1", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "34bea19b6e03d8153165d8f30bba4c3be86184c1" + "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/34bea19b6e03d8153165d8f30bba4c3be86184c1", - "reference": "34bea19b6e03d8153165d8f30bba4c3be86184c1", + "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", + "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", "shasum": "" }, "require": { @@ -6505,9 +6881,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.14.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.1" }, - "time": "2022-05-31T20:59:12+00:00" + "time": "2022-09-04T07:30:47+00:00" }, { "name": "ondram/ci-detector", @@ -6642,22 +7018,22 @@ }, { "name": "orchestra/testbench", - "version": "v6.24.1", + "version": "v6.25.0", "source": { "type": "git", "url": "https://github.com/orchestral/testbench.git", - "reference": "7b6a225851f6c148a80e241af5cbd833c83e572c" + "reference": "a65b90b78caed1fdface168ca02af34f3422e513" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/7b6a225851f6c148a80e241af5cbd833c83e572c", - "reference": "7b6a225851f6c148a80e241af5cbd833c83e572c", + "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/a65b90b78caed1fdface168ca02af34f3422e513", + "reference": "a65b90b78caed1fdface168ca02af34f3422e513", "shasum": "" }, "require": { "laravel/framework": "^8.75", "mockery/mockery": "^1.4.4", - "orchestra/testbench-core": "^6.28.1", + "orchestra/testbench-core": "^6.29", "php": "^7.3 || ^8.0", "phpunit/phpunit": "^8.5.21 || ^9.5.10", "spatie/laravel-ray": "^1.26.2" @@ -6691,7 +7067,7 @@ ], "support": { "issues": "https://github.com/orchestral/testbench/issues", - "source": "https://github.com/orchestral/testbench/tree/v6.24.1" + "source": "https://github.com/orchestral/testbench/tree/v6.25.0" }, "funding": [ { @@ -6703,20 +7079,20 @@ "type": "liberapay" } ], - "time": "2022-02-08T12:57:17+00:00" + "time": "2022-08-24T01:41:23+00:00" }, { "name": "orchestra/testbench-core", - "version": "v6.28.1", + "version": "v6.29.0", "source": { "type": "git", "url": "https://github.com/orchestral/testbench-core.git", - "reference": "e66074e825e21b40b3433703dc3f76f2bfebebe0" + "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/e66074e825e21b40b3433703dc3f76f2bfebebe0", - "reference": "e66074e825e21b40b3433703dc3f76f2bfebebe0", + "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/8eeace7d979a7905e6fab77a30a3b05da99459c4", + "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4", "shasum": "" }, "require": { @@ -6730,7 +7106,7 @@ "laravel/laravel": "8.x-dev", "mockery/mockery": "^1.4.4", "orchestra/canvas": "^6.1", - "phpunit/phpunit": "^8.5.21 || ^9.5.10 || ^10.0", + "phpunit/phpunit": "^8.5.21 || ^9.5.10", "spatie/laravel-ray": "^1.7.1", "symfony/process": "^5.0" }, @@ -6793,7 +7169,7 @@ "type": "liberapay" } ], - "time": "2022-02-08T12:50:35+00:00" + "time": "2022-08-24T00:15:20+00:00" }, { "name": "phar-io/manifest", @@ -7068,51 +7444,52 @@ }, { "name": "phpro/grumphp", - "version": "v1.5.1", + "version": "v1.13.0", "source": { "type": "git", "url": "https://github.com/phpro/grumphp.git", - "reference": "ef3d019f25f6852e61c3af7c8c234b1bf451a34c" + "reference": "3ec61c1678c4c370f02b05fef606fd561d923c8e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpro/grumphp/zipball/ef3d019f25f6852e61c3af7c8c234b1bf451a34c", - "reference": "ef3d019f25f6852e61c3af7c8c234b1bf451a34c", + "url": "https://github.com/gitapi/repos/phpro/grumphp/zipball/3ec61c1678c4c370f02b05fef606fd561d923c8e", + "reference": "3ec61c1678c4c370f02b05fef606fd561d923c8e", "shasum": "" }, "require": { - "amphp/amp": "^2.4", + "amphp/amp": "^2.6", "amphp/parallel": "^1.4", - "amphp/parallel-functions": "1.0", - "composer-plugin-api": "~1.0 || ~2.0", - "doctrine/collections": "^1.6.7", + "amphp/parallel-functions": "^1.1", + "composer-plugin-api": "~2.0", + "doctrine/collections": "^1.6.8", "ext-json": "*", - "gitonomy/gitlib": "^1.0.3", - "monolog/monolog": "~1.16 || ^2.0", - "ondram/ci-detector": "^3.5 || ^4.0", - "opis/closure": "^3.5", - "php": "^7.3 || ^8.0", - "psr/container": "^1.0", - "seld/jsonlint": "~1.1", - "symfony/config": "~4.4 || ~5.0", - "symfony/console": "~4.4 || ~5.0", - "symfony/dependency-injection": "~4.4 || ~5.0", - "symfony/dotenv": "~4.4 || ~5.0", - "symfony/event-dispatcher": "~4.4 || ~5.0", - "symfony/filesystem": "~4.4 || ~5.0", - "symfony/finder": "~4.4 || ~5.0", - "symfony/options-resolver": "~4.4 || ~5.0", - "symfony/process": "~4.4 || ~5.0", - "symfony/yaml": "~4.4 || ~5.0" + "gitonomy/gitlib": "^1.3", + "laravel/serializable-closure": "^1.1", + "monolog/monolog": "^2.0 || ^3.0", + "ondram/ci-detector": "^4.0", + "php": "^7.4 || ^8.0", + "psr/container": "^1.1 || ^2.0", + "seld/jsonlint": "~1.8", + "symfony/config": "~5.3 || ~6.0", + "symfony/console": "~5.3 || ~6.0", + "symfony/dependency-injection": "~5.3 || ~6.0", + "symfony/dotenv": "~5.3 || ~6.0", + "symfony/event-dispatcher": "~5.3 || ~6.0", + "symfony/filesystem": "~5.3 || ~6.0", + "symfony/finder": "~5.3 || ~6.0", + "symfony/options-resolver": "~5.3 || ~6.0", + "symfony/process": "~5.3 || ~6.0", + "symfony/yaml": "~5.3 || ~6.0" }, "require-dev": { - "brianium/paratest": "^6.3", - "composer/composer": "^1.10.22 || ^2.0.13", - "nikic/php-parser": "~4.0", + "amphp/sync": "^v1.4", + "brianium/paratest": "^6.4", + "composer/composer": "^2.2.6", + "nikic/php-parser": "~4.13", "php-parallel-lint/php-parallel-lint": "^1.3", - "phpspec/phpspec": "^7.1", + "phpspec/phpspec": "^7.2", "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^9.5.13" }, "suggest": { "atoum/atoum": "Lets GrumPHP run your unit tests.", @@ -7177,96 +7554,29 @@ "description": "A composer plugin that enables source code quality checks.", "support": { "issues": "https://github.com/phpro/grumphp/issues", - "source": "https://github.com/phpro/grumphp/tree/v1.5.1" - }, - "time": "2022-02-07T13:28:33+00:00" - }, - { - "name": "phpspec/prophecy", - "version": "v1.15.0", - "source": { - "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13" - }, - "dist": { - "type": "zip", - "url": "https://github.com/gitapi/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.2", - "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 || ^7.0", - "phpunit/phpunit": "^8.0 || ^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Prophecy\\": "src/Prophecy" - } + "source": "https://github.com/phpro/grumphp/tree/v1.13.0" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" - }, - { - "name": "Marcello Duarte", - "email": "marcello.duarte@gmail.com" - } - ], - "description": "Highly opinionated mocking framework for PHP 5.3+", - "homepage": "https://github.com/phpspec/prophecy", - "keywords": [ - "Double", - "Dummy", - "fake", - "mock", - "spy", - "stub" - ], - "support": { - "issues": "https://github.com/phpspec/prophecy/issues", - "source": "https://github.com/phpspec/prophecy/tree/v1.15.0" - }, - "time": "2021-12-08T12:19:24+00:00" + "time": "2022-06-24T08:32:25+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.15", + "version": "9.2.17", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f" + "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/2e9da11878c4202f97915c1cb4bb1ca318a63f5f", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f", + "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/aa94dc41e8661fe90c7316849907cba3007b10d8", + "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.13.0", + "nikic/php-parser": "^4.14", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -7315,7 +7625,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.15" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.17" }, "funding": [ { @@ -7323,7 +7633,7 @@ "type": "github" } ], - "time": "2022-03-07T09:28:20+00:00" + "time": "2022-08-30T12:24:04+00:00" }, { "name": "phpunit/php-file-iterator", @@ -7568,16 +7878,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.21", + "version": "9.5.24", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "0e32b76be457de00e83213528f6bb37e2a38fcb1" + "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/0e32b76be457de00e83213528f6bb37e2a38fcb1", - "reference": "0e32b76be457de00e83213528f6bb37e2a38fcb1", + "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", + "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", "shasum": "" }, "require": { @@ -7592,7 +7902,6 @@ "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", "php": ">=7.3", - "phpspec/prophecy": "^1.12.1", "phpunit/php-code-coverage": "^9.2.13", "phpunit/php-file-iterator": "^3.0.5", "phpunit/php-invoker": "^3.1.1", @@ -7607,12 +7916,9 @@ "sebastian/global-state": "^5.0.1", "sebastian/object-enumerator": "^4.0.3", "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.0", + "sebastian/type": "^3.1", "sebastian/version": "^3.0.2" }, - "require-dev": { - "phpspec/prophecy-phpunit": "^2.0.1" - }, "suggest": { "ext-soap": "*", "ext-xdebug": "*" @@ -7654,7 +7960,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.21" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.24" }, "funding": [ { @@ -7666,7 +7972,7 @@ "type": "github" } ], - "time": "2022-06-19T12:14:25+00:00" + "time": "2022-08-30T07:42:16+00:00" }, { "name": "pimple/pimple", @@ -7944,16 +8250,16 @@ }, { "name": "sebastian/comparator", - "version": "4.0.6", + "version": "4.0.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382" + "reference": "fa0f136dd2334583309d32b62544682ee972b51a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382", + "url": "https://github.com/gitapi/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a", "shasum": "" }, "require": { @@ -8006,7 +8312,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" }, "funding": [ { @@ -8014,7 +8320,7 @@ "type": "github" } ], - "time": "2020-10-26T15:49:45+00:00" + "time": "2022-09-14T12:41:17+00:00" }, { "name": "sebastian/complexity", @@ -8204,16 +8510,16 @@ }, { "name": "sebastian/exporter", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", + "url": "https://github.com/gitapi/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", "shasum": "" }, "require": { @@ -8269,7 +8575,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5" }, "funding": [ { @@ -8277,7 +8583,7 @@ "type": "github" } ], - "time": "2021-11-11T14:18:36+00:00" + "time": "2022-09-14T06:03:37+00:00" }, { "name": "sebastian/global-state", @@ -8632,16 +8938,16 @@ }, { "name": "sebastian/type", - "version": "3.0.0", + "version": "3.2.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad" + "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/type/zipball/b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", + "url": "https://github.com/gitapi/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", "shasum": "" }, "require": { @@ -8653,7 +8959,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "3.2-dev" } }, "autoload": { @@ -8676,7 +8982,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.0.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.2.0" }, "funding": [ { @@ -8684,7 +8990,7 @@ "type": "github" } ], - "time": "2022-03-15T09:54:48+00:00" + "time": "2022-09-12T14:47:03+00:00" }, { "name": "sebastian/version", @@ -8910,16 +9216,16 @@ }, { "name": "spatie/laravel-ray", - "version": "1.29.7", + "version": "1.30.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-ray.git", - "reference": "97b8ccdb9975e3339069765417990e89474254ee" + "reference": "1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/spatie/laravel-ray/zipball/97b8ccdb9975e3339069765417990e89474254ee", - "reference": "97b8ccdb9975e3339069765417990e89474254ee", + "url": "https://github.com/gitapi/repos/spatie/laravel-ray/zipball/1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6", + "reference": "1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6", "shasum": "" }, "require": { @@ -8978,7 +9284,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-ray/issues", - "source": "https://github.com/spatie/laravel-ray/tree/1.29.7" + "source": "https://github.com/spatie/laravel-ray/tree/1.30.0" }, "funding": [ { @@ -8990,7 +9296,7 @@ "type": "other" } ], - "time": "2022-05-27T18:45:58+00:00" + "time": "2022-07-29T10:02:43+00:00" }, { "name": "spatie/macroable", @@ -9044,16 +9350,16 @@ }, { "name": "spatie/ray", - "version": "1.34.5", + "version": "1.36.0", "source": { "type": "git", "url": "https://github.com/spatie/ray.git", - "reference": "2d64ea264eecbdc7ec01e4e8b45978cae80815d2" + "reference": "4a4def8cda4806218341b8204c98375aa8c34323" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/spatie/ray/zipball/2d64ea264eecbdc7ec01e4e8b45978cae80815d2", - "reference": "2d64ea264eecbdc7ec01e4e8b45978cae80815d2", + "url": "https://github.com/gitapi/repos/spatie/ray/zipball/4a4def8cda4806218341b8204c98375aa8c34323", + "reference": "4a4def8cda4806218341b8204c98375aa8c34323", "shasum": "" }, "require": { @@ -9103,7 +9409,7 @@ ], "support": { "issues": "https://github.com/spatie/ray/issues", - "source": "https://github.com/spatie/ray/tree/1.34.5" + "source": "https://github.com/spatie/ray/tree/1.36.0" }, "funding": [ { @@ -9115,7 +9421,7 @@ "type": "other" } ], - "time": "2022-06-03T12:32:57+00:00" + "time": "2022-08-11T14:04:18+00:00" }, { "name": "squizlabs/php_codesniffer", @@ -9175,16 +9481,16 @@ }, { "name": "symfony/config", - "version": "v5.4.9", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "8f551fe22672ac7ab2c95fe46d899f960ed4d979" + "reference": "ec79e03125c1d2477e43dde8528535d90cc78379" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/config/zipball/8f551fe22672ac7ab2c95fe46d899f960ed4d979", - "reference": "8f551fe22672ac7ab2c95fe46d899f960ed4d979", + "url": "https://github.com/gitapi/repos/symfony/config/zipball/ec79e03125c1d2477e43dde8528535d90cc78379", + "reference": "ec79e03125c1d2477e43dde8528535d90cc78379", "shasum": "" }, "require": { @@ -9234,7 +9540,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v5.4.9" + "source": "https://github.com/symfony/config/tree/v5.4.11" }, "funding": [ { @@ -9250,20 +9556,20 @@ "type": "tidelift" } ], - "time": "2022-05-17T10:39:36+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/dependency-injection", - "version": "v5.4.10", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "88d1c0d38c2e60f757fa11d89cfc885f0b7f5171" + "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/88d1c0d38c2e60f757fa11d89cfc885f0b7f5171", - "reference": "88d1c0d38c2e60f757fa11d89cfc885f0b7f5171", + "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a8b9251016e9476db73e25fa836904bc0bf74c62", + "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62", "shasum": "" }, "require": { @@ -9323,7 +9629,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v5.4.10" + "source": "https://github.com/symfony/dependency-injection/tree/v5.4.11" }, "funding": [ { @@ -9339,7 +9645,7 @@ "type": "tidelift" } ], - "time": "2022-06-26T13:00:04+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/dotenv", @@ -9414,16 +9720,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.9", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "36a017fa4cce1eff1b8e8129ff53513abcef05ba" + "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/36a017fa4cce1eff1b8e8129ff53513abcef05ba", - "reference": "36a017fa4cce1eff1b8e8129ff53513abcef05ba", + "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/2d67c1f9a1937406a9be3171b4b22250c0a11447", + "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447", "shasum": "" }, "require": { @@ -9458,7 +9764,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.9" + "source": "https://github.com/symfony/filesystem/tree/v5.4.12" }, "funding": [ { @@ -9474,20 +9780,20 @@ "type": "tidelift" } ], - "time": "2022-05-20T13:55:35+00:00" + "time": "2022-08-02T13:48:16+00:00" }, { "name": "symfony/options-resolver", - "version": "v5.4.3", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8" + "reference": "54f14e36aa73cb8f7261d7686691fd4d75ea2690" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/options-resolver/zipball/cc1147cb11af1b43f503ac18f31aa3bec213aba8", - "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8", + "url": "https://github.com/gitapi/repos/symfony/options-resolver/zipball/54f14e36aa73cb8f7261d7686691fd4d75ea2690", + "reference": "54f14e36aa73cb8f7261d7686691fd4d75ea2690", "shasum": "" }, "require": { @@ -9527,7 +9833,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.4.3" + "source": "https://github.com/symfony/options-resolver/tree/v5.4.11" }, "funding": [ { @@ -9543,7 +9849,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/stopwatch", @@ -9609,16 +9915,16 @@ }, { "name": "symfony/yaml", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "04e42926429d9e8b39c174387ab990bf7817f7a2" + "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/04e42926429d9e8b39c174387ab990bf7817f7a2", - "reference": "04e42926429d9e8b39c174387ab990bf7817f7a2", + "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", + "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", "shasum": "" }, "require": { @@ -9664,7 +9970,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.10" + "source": "https://github.com/symfony/yaml/tree/v5.4.12" }, "funding": [ { @@ -9680,7 +9986,7 @@ "type": "tidelift" } ], - "time": "2022-06-20T11:50:59+00:00" + "time": "2022-08-02T15:52:22+00:00" }, { "name": "theseer/tokenizer", @@ -9734,16 +10040,16 @@ }, { "name": "vimeo/psalm", - "version": "4.24.0", + "version": "4.27.0", "source": { "type": "git", "url": "https://github.com/vimeo/psalm.git", - "reference": "06dd975cb55d36af80f242561738f16c5f58264f" + "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/06dd975cb55d36af80f242561738f16c5f58264f", - "reference": "06dd975cb55d36af80f242561738f16c5f58264f", + "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/faf106e717c37b8c81721845dba9de3d8deed8ff", + "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff", "shasum": "" }, "require": { @@ -9835,9 +10141,9 @@ ], "support": { "issues": "https://github.com/vimeo/psalm/issues", - "source": "https://github.com/vimeo/psalm/tree/4.24.0" + "source": "https://github.com/vimeo/psalm/tree/4.27.0" }, - "time": "2022-06-26T11:47:54+00:00" + "time": "2022-08-31T13:47:09+00:00" }, { "name": "webmozart/path-util", @@ -9892,16 +10198,16 @@ }, { "name": "zbateson/mail-mime-parser", - "version": "2.2.1", + "version": "2.2.2", "source": { "type": "git", "url": "https://github.com/zbateson/mail-mime-parser.git", - "reference": "24955de7ec352b3258c1d4551efd21202cb8710c" + "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/24955de7ec352b3258c1d4551efd21202cb8710c", - "reference": "24955de7ec352b3258c1d4551efd21202cb8710c", + "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/318cd809afebe48e8fb41625b05b25470fb3fa86", + "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86", "shasum": "" }, "require": { @@ -9961,7 +10267,7 @@ "type": "github" } ], - "time": "2022-02-22T21:35:59+00:00" + "time": "2022-09-01T15:59:13+00:00" }, { "name": "zbateson/mb-wrapper", @@ -10032,16 +10338,16 @@ }, { "name": "zbateson/stream-decorators", - "version": "1.0.6", + "version": "1.0.7", "source": { "type": "git", "url": "https://github.com/zbateson/stream-decorators.git", - "reference": "3403c4323bd1cd15fe54348b031b26b064c706af" + "reference": "8f8ca208572963258b7e6d91106181706deacd10" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/stream-decorators/zipball/3403c4323bd1cd15fe54348b031b26b064c706af", - "reference": "3403c4323bd1cd15fe54348b031b26b064c706af", + "url": "https://github.com/gitapi/repos/zbateson/stream-decorators/zipball/8f8ca208572963258b7e6d91106181706deacd10", + "reference": "8f8ca208572963258b7e6d91106181706deacd10", "shasum": "" }, "require": { @@ -10081,7 +10387,7 @@ ], "support": { "issues": "https://github.com/zbateson/stream-decorators/issues", - "source": "https://github.com/zbateson/stream-decorators/tree/1.0.6" + "source": "https://github.com/zbateson/stream-decorators/tree/1.0.7" }, "funding": [ { @@ -10089,7 +10395,7 @@ "type": "github" } ], - "time": "2021-07-08T19:01:59+00:00" + "time": "2022-09-08T15:44:55+00:00" } ], "aliases": [], @@ -10098,9 +10404,9 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "ext-rdkafka": "*", + "ext-rdkafka": ">=4.0", "ext-json": "*", - "php": ">=7.1" + "php": ">=7.4" }, "platform-dev": [], "plugin-api-version": "2.0.0" diff --git a/docker/Dockerfile b/docker/Dockerfile index 4185716c..8ec727b4 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,4 +1,4 @@ -FROM leroymerlinbr/php:7.3 +FROM leroymerlinbr/php:7.4 LABEL maintainer="boitata@leroymerlin.com.br" USER root:root From a8da8e2222ea510ce4522ab6351e82537c240c19 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Mon, 26 Sep 2022 13:39:19 -0300 Subject: [PATCH 09/28] Revert "chore(rdkafka): add flush method" --- composer.json | 6 +- composer.lock | 1254 +++++++---------- docker/Dockerfile | 2 +- grumphp.yml | 1 - src/Producer/Poll.php | 2 +- tests/Integration/ProducerTest.php | 6 - tests/Integration/ProducerWithAvroTest.php | 1 - .../Unit/Connectors/Consumer/FactoryTest.php | 2 +- .../Connectors/Consumer/HighLevelTest.php | 2 +- .../Unit/Connectors/Consumer/LowLevelTest.php | 2 +- tests/Unit/Console/ConsumerCommandTest.php | 2 +- tests/Unit/Producer/PollTest.php | 6 +- tests/Unit/ProducerTest.php | 11 +- 13 files changed, 493 insertions(+), 804 deletions(-) diff --git a/composer.json b/composer.json index c146253b..28df9049 100644 --- a/composer.json +++ b/composer.json @@ -7,20 +7,20 @@ ], "description": "Kafka package for laravel applications", "require": { - "ext-rdkafka": ">=4.0", + "ext-rdkafka": "*", "ext-json": "*", "guzzlehttp/guzzle": "^6.5.0 || ^7.0", "illuminate/support": "^5.5 || ^6.0 || ^7.0 || ^8.0", "illuminate/console": "^5.5 || ^6.0 || ^7.0 || ^8.0", "illuminate/config": "^5.5 || ^6.0 || ^7.0 || ^8.0", - "php": ">=7.4", + "php": ">=7.1", "wikimedia/avro": "^1.7" }, "require-dev": { "leroy-merlin-br/coding-standard": "^1.0.1", "phpunit/phpunit": "^9.4.3", "mockery/mockery": "^1.3.0", - "kwn/php-rdkafka-stubs": "^2.2.0", + "kwn/php-rdkafka-stubs": "~1.1.0", "orchestra/testbench": "^6.0", "dms/phpunit-arraysubset-asserts": "^0.2.1", "phpro/grumphp": "^1.5", diff --git a/composer.lock b/composer.lock index 07f9f646..a5b88475 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": "04d9d60bb62fd311c7dcfda058b5a296", + "content-hash": "6f57d9ed1bb3086e3155d3ac4204fdfe", "packages": [ { "name": "brick/math", @@ -66,105 +66,30 @@ ], "time": "2021-08-15T20:50:18+00:00" }, - { - "name": "dflydev/dot-access-data", - "version": "v3.0.1", - "source": { - "type": "git", - "url": "https://github.com/dflydev/dflydev-dot-access-data.git", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c" - }, - "dist": { - "type": "zip", - "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^0.12.42", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", - "scrutinizer/ocular": "1.6.0", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^3.14" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Dflydev\\DotAccessData\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Dragonfly Development Inc.", - "email": "info@dflydev.com", - "homepage": "http://dflydev.com" - }, - { - "name": "Beau Simensen", - "email": "beau@dflydev.com", - "homepage": "http://beausimensen.com" - }, - { - "name": "Carlos Frutos", - "email": "carlos@kiwing.it", - "homepage": "https://github.com/cfrutos" - }, - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com" - } - ], - "description": "Given a deep data structure, access data by dot notation.", - "homepage": "https://github.com/dflydev/dflydev-dot-access-data", - "keywords": [ - "access", - "data", - "dot", - "notation" - ], - "support": { - "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", - "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" - }, - "time": "2021-08-13T13:06:58+00:00" - }, { "name": "doctrine/inflector", - "version": "2.0.5", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392" + "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", - "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", + "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", + "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", "shasum": "" }, "require": { "php": "^7.2 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9", - "phpstan/phpstan": "^1.8", - "phpstan/phpstan-phpunit": "^1.1", - "phpstan/phpstan-strict-rules": "^1.3", - "phpunit/phpunit": "^8.5 || ^9.5", - "vimeo/psalm": "^4.25" + "doctrine/coding-standard": "^8.2", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpstan/phpstan-strict-rules": "^0.12", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "vimeo/psalm": "^4.10" }, "type": "library", "autoload": { @@ -214,7 +139,7 @@ ], "support": { "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.5" + "source": "https://github.com/doctrine/inflector/tree/2.0.4" }, "funding": [ { @@ -230,7 +155,7 @@ "type": "tidelift" } ], - "time": "2022-09-07T09:01:28+00:00" + "time": "2021-10-22T20:16:43+00:00" }, { "name": "doctrine/lexer", @@ -310,16 +235,16 @@ }, { "name": "dragonmantank/cron-expression", - "version": "v3.3.2", + "version": "v3.3.1", "source": { "type": "git", "url": "https://github.com/dragonmantank/cron-expression.git", - "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8" + "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/dragonmantank/cron-expression/zipball/782ca5968ab8b954773518e9e49a6f892a34b2a8", - "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8", + "url": "https://github.com/gitapi/repos/dragonmantank/cron-expression/zipball/be85b3f05b46c39bbc0d95f6c071ddff669510fa", + "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa", "shasum": "" }, "require": { @@ -359,7 +284,7 @@ ], "support": { "issues": "https://github.com/dragonmantank/cron-expression/issues", - "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.2" + "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.1" }, "funding": [ { @@ -367,7 +292,7 @@ "type": "github" } ], - "time": "2022-09-10T18:51:20+00:00" + "time": "2022-01-18T15:43:28+00:00" }, { "name": "egulias/email-validator", @@ -439,24 +364,24 @@ }, { "name": "graham-campbell/result-type", - "version": "v1.1.0", + "version": "v1.0.4", "source": { "type": "git", "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8" + "reference": "0690bde05318336c7221785f2a932467f98b64ca" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/GrahamCampbell/Result-Type/zipball/a878d45c1914464426dc94da61c9e1d36ae262a8", - "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8", + "url": "https://github.com/gitapi/repos/GrahamCampbell/Result-Type/zipball/0690bde05318336c7221785f2a932467f98b64ca", + "reference": "0690bde05318336c7221785f2a932467f98b64ca", "shasum": "" }, "require": { - "php": "^7.2.5 || ^8.0", - "phpoption/phpoption": "^1.9" + "php": "^7.0 || ^8.0", + "phpoption/phpoption": "^1.8" }, "require-dev": { - "phpunit/phpunit": "^8.5.28 || ^9.5.21" + "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" }, "type": "library", "autoload": { @@ -485,7 +410,7 @@ ], "support": { "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.0" + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.4" }, "funding": [ { @@ -497,20 +422,20 @@ "type": "tidelift" } ], - "time": "2022-07-30T15:56:11+00:00" + "time": "2021-11-21T21:41:47+00:00" }, { "name": "guzzlehttp/guzzle", - "version": "7.5.0", + "version": "7.4.5", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" + "reference": "1dd98b0564cb3f6bd16ce683cb755f94c10fbd82" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "url": "https://github.com/gitapi/repos/guzzle/guzzle/zipball/1dd98b0564cb3f6bd16ce683cb755f94c10fbd82", + "reference": "1dd98b0564cb3f6bd16ce683cb755f94c10fbd82", "shasum": "" }, "require": { @@ -525,10 +450,10 @@ "psr/http-client-implementation": "1.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", + "bamarni/composer-bin-plugin": "^1.4.1", "ext-curl": "*", "php-http/client-integration-tests": "^3.0", - "phpunit/phpunit": "^8.5.29 || ^9.5.23", + "phpunit/phpunit": "^8.5.5 || ^9.3.5", "psr/log": "^1.1 || ^2.0 || ^3.0" }, "suggest": { @@ -538,12 +463,8 @@ }, "type": "library", "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": false - }, "branch-alias": { - "dev-master": "7.5-dev" + "dev-master": "7.4-dev" } }, "autoload": { @@ -609,7 +530,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.5.0" + "source": "https://github.com/guzzle/guzzle/tree/7.4.5" }, "funding": [ { @@ -625,20 +546,20 @@ "type": "tidelift" } ], - "time": "2022-08-28T15:39:27+00:00" + "time": "2022-06-20T22:16:13+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.5.2", + "version": "1.5.1", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "b94b2807d85443f9719887892882d0329d1e2598" + "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", - "reference": "b94b2807d85443f9719887892882d0329d1e2598", + "url": "https://github.com/gitapi/repos/guzzle/promises/zipball/fe752aedc9fd8fcca3fe7ad05d419d32998a06da", + "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da", "shasum": "" }, "require": { @@ -693,7 +614,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.2" + "source": "https://github.com/guzzle/promises/tree/1.5.1" }, "funding": [ { @@ -709,20 +630,20 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:55:35+00:00" + "time": "2021-10-22T20:56:57+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.4.1", + "version": "2.4.0", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379" + "reference": "13388f00956b1503577598873fffb5ae994b5737" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/69568e4293f4fa993f3b0e51c9723e1e17c41379", - "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379", + "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/13388f00956b1503577598873fffb5ae994b5737", + "reference": "13388f00956b1503577598873fffb5ae994b5737", "shasum": "" }, "require": { @@ -736,19 +657,15 @@ "psr/http-message-implementation": "1.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", + "bamarni/composer-bin-plugin": "^1.4.1", "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.29 || ^9.5.23" + "phpunit/phpunit": "^8.5.8 || ^9.3.10" }, "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" }, "type": "library", "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": false - }, "branch-alias": { "dev-master": "2.4-dev" } @@ -812,7 +729,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.1" + "source": "https://github.com/guzzle/psr7/tree/2.4.0" }, "funding": [ { @@ -828,20 +745,20 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:45:39+00:00" + "time": "2022-06-20T21:43:11+00:00" }, { "name": "laravel/framework", - "version": "v8.83.23", + "version": "v8.83.18", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491" + "reference": "db8188e9cc8359a5c6706fa9d9f55aad7f235077" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/framework/zipball/bdc707f8b9bcad289b24cd182d98ec7480ac4491", - "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491", + "url": "https://github.com/gitapi/repos/laravel/framework/zipball/db8188e9cc8359a5c6706fa9d9f55aad7f235077", + "reference": "db8188e9cc8359a5c6706fa9d9f55aad7f235077", "shasum": "" }, "require": { @@ -1001,30 +918,29 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-07-26T13:30:00+00:00" + "time": "2022-06-28T14:30:38+00:00" }, { "name": "laravel/serializable-closure", - "version": "v1.2.2", + "version": "v1.2.0", "source": { "type": "git", "url": "https://github.com/laravel/serializable-closure.git", - "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae" + "reference": "09f0e9fb61829f628205b7c94906c28740ff9540" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/serializable-closure/zipball/47afb7fae28ed29057fdca37e16a84f90cc62fae", - "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae", + "url": "https://github.com/gitapi/repos/laravel/serializable-closure/zipball/09f0e9fb61829f628205b7c94906c28740ff9540", + "reference": "09f0e9fb61829f628205b7c94906c28740ff9540", "shasum": "" }, "require": { "php": "^7.3|^8.0" }, "require-dev": { - "nesbot/carbon": "^2.61", - "pestphp/pest": "^1.21.3", - "phpstan/phpstan": "^1.8.2", - "symfony/var-dumper": "^5.4.11" + "pestphp/pest": "^1.18", + "phpstan/phpstan": "^0.12.98", + "symfony/var-dumper": "^5.3" }, "type": "library", "extra": { @@ -1061,58 +977,46 @@ "issues": "https://github.com/laravel/serializable-closure/issues", "source": "https://github.com/laravel/serializable-closure" }, - "time": "2022-09-08T13:45:54+00:00" + "time": "2022-05-16T17:09:47+00:00" }, { "name": "league/commonmark", - "version": "2.3.5", + "version": "1.6.7", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257" + "reference": "2b8185c13bc9578367a5bf901881d1c1b5bbd09b" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/84d74485fdb7074f4f9dd6f02ab957b1de513257", - "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257", + "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/2b8185c13bc9578367a5bf901881d1c1b5bbd09b", + "reference": "2b8185c13bc9578367a5bf901881d1c1b5bbd09b", "shasum": "" }, "require": { "ext-mbstring": "*", - "league/config": "^1.1.1", - "php": "^7.4 || ^8.0", - "psr/event-dispatcher": "^1.0", - "symfony/deprecation-contracts": "^2.1 || ^3.0", - "symfony/polyfill-php80": "^1.16" + "php": "^7.1 || ^8.0" + }, + "conflict": { + "scrutinizer/ocular": "1.7.*" }, "require-dev": { - "cebe/markdown": "^1.0", - "commonmark/cmark": "0.30.0", - "commonmark/commonmark.js": "0.30.0", - "composer/package-versions-deprecated": "^1.8", - "embed/embed": "^4.4", - "erusev/parsedown": "^1.0", + "cebe/markdown": "~1.0", + "commonmark/commonmark.js": "0.29.2", + "erusev/parsedown": "~1.0", "ext-json": "*", "github/gfm": "0.29.0", - "michelf/php-markdown": "^1.4", - "nyholm/psr7": "^1.5", - "phpstan/phpstan": "^1.8.2", - "phpunit/phpunit": "^9.5.21", - "scrutinizer/ocular": "^1.8.1", - "symfony/finder": "^5.3 | ^6.0", - "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", - "unleashedtech/php-coding-standard": "^3.1.1", - "vimeo/psalm": "^4.24.0" - }, - "suggest": { - "symfony/yaml": "v2.3+ required if using the Front Matter extension" + "michelf/php-markdown": "~1.4", + "mikehaertl/php-shellcommand": "^1.4", + "phpstan/phpstan": "^0.12.90", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.2", + "scrutinizer/ocular": "^1.5", + "symfony/finder": "^4.2" }, + "bin": [ + "bin/commonmark" + ], "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.4-dev" - } - }, "autoload": { "psr-4": { "League\\CommonMark\\": "src" @@ -1130,7 +1034,7 @@ "role": "Lead Developer" } ], - "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", + "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and Github-Flavored Markdown (GFM)", "homepage": "https://commonmark.thephpleague.com", "keywords": [ "commonmark", @@ -1144,7 +1048,6 @@ ], "support": { "docs": "https://commonmark.thephpleague.com/", - "forum": "https://github.com/thephpleague/commonmark/discussions", "issues": "https://github.com/thephpleague/commonmark/issues", "rss": "https://github.com/thephpleague/commonmark/releases.atom", "source": "https://github.com/thephpleague/commonmark" @@ -1167,89 +1070,7 @@ "type": "tidelift" } ], - "time": "2022-07-29T10:59:45+00:00" - }, - { - "name": "league/config", - "version": "v1.1.1", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/config.git", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" - }, - "dist": { - "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", - "shasum": "" - }, - "require": { - "dflydev/dot-access-data": "^3.0.1", - "nette/schema": "^1.2", - "php": "^7.4 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^0.12.90", - "phpunit/phpunit": "^9.5.5", - "scrutinizer/ocular": "^1.8.1", - "unleashedtech/php-coding-standard": "^3.1", - "vimeo/psalm": "^4.7.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.2-dev" - } - }, - "autoload": { - "psr-4": { - "League\\Config\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com", - "role": "Lead Developer" - } - ], - "description": "Define configuration arrays with strict schemas and access values with dot notation", - "homepage": "https://config.thephpleague.com", - "keywords": [ - "array", - "config", - "configuration", - "dot", - "dot-access", - "nested", - "schema" - ], - "support": { - "docs": "https://config.thephpleague.com/", - "issues": "https://github.com/thephpleague/config/issues", - "rss": "https://github.com/thephpleague/config/releases.atom", - "source": "https://github.com/thephpleague/config" - }, - "funding": [ - { - "url": "https://www.colinodell.com/sponsor", - "type": "custom" - }, - { - "url": "https://www.paypal.me/colinpodell/10.00", - "type": "custom" - }, - { - "url": "https://github.com/colinodell", - "type": "github" - } - ], - "time": "2021-08-14T12:15:32+00:00" + "time": "2022-01-13T17:18:13+00:00" }, { "name": "league/flysystem", @@ -1403,16 +1224,16 @@ }, { "name": "monolog/monolog", - "version": "2.8.0", + "version": "2.7.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "720488632c590286b88b80e62aa3d3d551ad4a50" + "reference": "5579edf28aee1190a798bfa5be8bc16c563bd524" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/Seldaek/monolog/zipball/720488632c590286b88b80e62aa3d3d551ad4a50", - "reference": "720488632c590286b88b80e62aa3d3d551ad4a50", + "url": "https://github.com/gitapi/repos/Seldaek/monolog/zipball/5579edf28aee1190a798bfa5be8bc16c563bd524", + "reference": "5579edf28aee1190a798bfa5be8bc16c563bd524", "shasum": "" }, "require": { @@ -1432,10 +1253,11 @@ "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", + "php-console/php-console": "^3.1.3", "phpspec/prophecy": "^1.15", "phpstan/phpstan": "^0.12.91", "phpunit/phpunit": "^8.5.14", - "predis/predis": "^1.1 || ^2.0", + "predis/predis": "^1.1", "rollbar/rollbar": "^1.3 || ^2 || ^3", "ruflin/elastica": "^7", "swiftmailer/swiftmailer": "^5.3|^6.0", @@ -1455,6 +1277,7 @@ "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", + "php-console/php-console": "Allow sending log messages to Google Chrome", "rollbar/rollbar": "Allow sending log messages to Rollbar", "ruflin/elastica": "Allow sending log messages to an Elastic Search server" }, @@ -1489,7 +1312,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/2.8.0" + "source": "https://github.com/Seldaek/monolog/tree/2.7.0" }, "funding": [ { @@ -1501,20 +1324,20 @@ "type": "tidelift" } ], - "time": "2022-07-24T11:55:47+00:00" + "time": "2022-06-09T08:59:12+00:00" }, { "name": "nesbot/carbon", - "version": "2.62.1", + "version": "2.59.1", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a" + "reference": "a9000603ea337c8df16cc41f8b6be95a65f4d0f5" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", - "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", + "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/a9000603ea337c8df16cc41f8b6be95a65f4d0f5", + "reference": "a9000603ea337c8df16cc41f8b6be95a65f4d0f5", "shasum": "" }, "require": { @@ -1603,154 +1426,7 @@ "type": "tidelift" } ], - "time": "2022-09-02T07:48:13+00:00" - }, - { - "name": "nette/schema", - "version": "v1.2.2", - "source": { - "type": "git", - "url": "https://github.com/nette/schema.git", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" - }, - "dist": { - "type": "zip", - "url": "https://github.com/gitapi/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", - "shasum": "" - }, - "require": { - "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", - "php": ">=7.1 <8.2" - }, - "require-dev": { - "nette/tester": "^2.3 || ^2.4", - "phpstan/phpstan-nette": "^0.12", - "tracy/tracy": "^2.7" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause", - "GPL-2.0-only", - "GPL-3.0-only" - ], - "authors": [ - { - "name": "David Grudl", - "homepage": "https://davidgrudl.com" - }, - { - "name": "Nette Community", - "homepage": "https://nette.org/contributors" - } - ], - "description": "📐 Nette Schema: validating data structures against a given Schema.", - "homepage": "https://nette.org", - "keywords": [ - "config", - "nette" - ], - "support": { - "issues": "https://github.com/nette/schema/issues", - "source": "https://github.com/nette/schema/tree/v1.2.2" - }, - "time": "2021-10-15T11:40:02+00:00" - }, - { - "name": "nette/utils", - "version": "v3.2.8", - "source": { - "type": "git", - "url": "https://github.com/nette/utils.git", - "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368" - }, - "dist": { - "type": "zip", - "url": "https://github.com/gitapi/repos/nette/utils/zipball/02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", - "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", - "shasum": "" - }, - "require": { - "php": ">=7.2 <8.3" - }, - "conflict": { - "nette/di": "<3.0.6" - }, - "require-dev": { - "nette/tester": "~2.0", - "phpstan/phpstan": "^1.0", - "tracy/tracy": "^2.3" - }, - "suggest": { - "ext-gd": "to use Image", - "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", - "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", - "ext-json": "to use Nette\\Utils\\Json", - "ext-mbstring": "to use Strings::lower() etc...", - "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", - "ext-xml": "to use Strings::length() etc. when mbstring is not available" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.2-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause", - "GPL-2.0-only", - "GPL-3.0-only" - ], - "authors": [ - { - "name": "David Grudl", - "homepage": "https://davidgrudl.com" - }, - { - "name": "Nette Community", - "homepage": "https://nette.org/contributors" - } - ], - "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", - "homepage": "https://nette.org", - "keywords": [ - "array", - "core", - "datetime", - "images", - "json", - "nette", - "paginator", - "password", - "slugify", - "string", - "unicode", - "utf-8", - "utility", - "validation" - ], - "support": { - "issues": "https://github.com/nette/utils/issues", - "source": "https://github.com/nette/utils/tree/v3.2.8" - }, - "time": "2022-09-12T23:36:20+00:00" + "time": "2022-06-29T21:43:55+00:00" }, { "name": "opis/closure", @@ -1819,33 +1495,29 @@ }, { "name": "phpoption/phpoption", - "version": "1.9.0", + "version": "1.8.1", "source": { "type": "git", "url": "https://github.com/schmittjoh/php-option.git", - "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab" + "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/schmittjoh/php-option/zipball/dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", - "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", + "url": "https://github.com/gitapi/repos/schmittjoh/php-option/zipball/eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", + "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", "shasum": "" }, "require": { - "php": "^7.2.5 || ^8.0" + "php": "^7.0 || ^8.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.8", - "phpunit/phpunit": "^8.5.28 || ^9.5.21" + "bamarni/composer-bin-plugin": "^1.4.1", + "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" }, "type": "library", "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": true - }, "branch-alias": { - "dev-master": "1.9-dev" + "dev-master": "1.8-dev" } }, "autoload": { @@ -1878,7 +1550,7 @@ ], "support": { "issues": "https://github.com/schmittjoh/php-option/issues", - "source": "https://github.com/schmittjoh/php-option/tree/1.9.0" + "source": "https://github.com/schmittjoh/php-option/tree/1.8.1" }, "funding": [ { @@ -1890,24 +1562,24 @@ "type": "tidelift" } ], - "time": "2022-07-30T15:51:26+00:00" + "time": "2021-12-04T23:24:31+00:00" }, { "name": "psr/container", - "version": "1.1.2", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", + "url": "https://github.com/gitapi/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", "shasum": "" }, "require": { - "php": ">=7.4.0" + "php": ">=7.2.0" }, "type": "library", "autoload": { @@ -1936,9 +1608,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.2" + "source": "https://github.com/php-fig/container/tree/1.1.1" }, - "time": "2021-11-05T16:50:12+00:00" + "time": "2021-03-05T17:36:06+00:00" }, { "name": "psr/event-dispatcher", @@ -2550,16 +2222,16 @@ }, { "name": "symfony/console", - "version": "v5.4.12", + "version": "v5.4.10", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1" + "reference": "4d671ab4ddac94ee439ea73649c69d9d200b5000" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/console/zipball/c072aa8f724c3af64e2c7a96b796a4863d24dba1", - "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1", + "url": "https://github.com/gitapi/repos/symfony/console/zipball/4d671ab4ddac94ee439ea73649c69d9d200b5000", + "reference": "4d671ab4ddac94ee439ea73649c69d9d200b5000", "shasum": "" }, "require": { @@ -2629,7 +2301,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.12" + "source": "https://github.com/symfony/console/tree/v5.4.10" }, "funding": [ { @@ -2645,20 +2317,20 @@ "type": "tidelift" } ], - "time": "2022-08-17T13:18:05+00:00" + "time": "2022-06-26T13:00:04+00:00" }, { "name": "symfony/css-selector", - "version": "v5.4.11", + "version": "v5.4.3", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "c1681789f059ab756001052164726ae88512ae3d" + "reference": "b0a190285cd95cb019237851205b8140ef6e368e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/css-selector/zipball/c1681789f059ab756001052164726ae88512ae3d", - "reference": "c1681789f059ab756001052164726ae88512ae3d", + "url": "https://github.com/gitapi/repos/symfony/css-selector/zipball/b0a190285cd95cb019237851205b8140ef6e368e", + "reference": "b0a190285cd95cb019237851205b8140ef6e368e", "shasum": "" }, "require": { @@ -2695,7 +2367,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v5.4.11" + "source": "https://github.com/symfony/css-selector/tree/v5.4.3" }, "funding": [ { @@ -2711,7 +2383,7 @@ "type": "tidelift" } ], - "time": "2022-06-27T16:58:25+00:00" + "time": "2022-01-02T09:53:40+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2782,16 +2454,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.4.11", + "version": "v5.4.9", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8" + "reference": "c116cda1f51c678782768dce89a45f13c949455d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/f75d17cb4769eb38cd5fccbda95cd80a054d35c8", - "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8", + "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/c116cda1f51c678782768dce89a45f13c949455d", + "reference": "c116cda1f51c678782768dce89a45f13c949455d", "shasum": "" }, "require": { @@ -2833,7 +2505,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v5.4.11" + "source": "https://github.com/symfony/error-handler/tree/v5.4.9" }, "funding": [ { @@ -2849,7 +2521,7 @@ "type": "tidelift" } ], - "time": "2022-07-29T07:37:50+00:00" + "time": "2022-05-21T13:57:48+00:00" }, { "name": "symfony/event-dispatcher", @@ -3017,16 +2689,16 @@ }, { "name": "symfony/finder", - "version": "v5.4.11", + "version": "v5.4.8", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "7872a66f57caffa2916a584db1aa7f12adc76f8c" + "reference": "9b630f3427f3ebe7cd346c277a1408b00249dad9" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/finder/zipball/7872a66f57caffa2916a584db1aa7f12adc76f8c", - "reference": "7872a66f57caffa2916a584db1aa7f12adc76f8c", + "url": "https://github.com/gitapi/repos/symfony/finder/zipball/9b630f3427f3ebe7cd346c277a1408b00249dad9", + "reference": "9b630f3427f3ebe7cd346c277a1408b00249dad9", "shasum": "" }, "require": { @@ -3060,7 +2732,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.11" + "source": "https://github.com/symfony/finder/tree/v5.4.8" }, "funding": [ { @@ -3076,20 +2748,20 @@ "type": "tidelift" } ], - "time": "2022-07-29T07:37:50+00:00" + "time": "2022-04-15T08:07:45+00:00" }, { "name": "symfony/http-foundation", - "version": "v5.4.12", + "version": "v5.4.10", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791" + "reference": "e7793b7906f72a8cc51054fbca9dcff7a8af1c1e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/f4bfe9611b113b15d98a43da68ec9b5a00d56791", - "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791", + "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/e7793b7906f72a8cc51054fbca9dcff7a8af1c1e", + "reference": "e7793b7906f72a8cc51054fbca9dcff7a8af1c1e", "shasum": "" }, "require": { @@ -3101,11 +2773,8 @@ "require-dev": { "predis/predis": "~1.0", "symfony/cache": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4", - "symfony/mime": "^4.4|^5.0|^6.0", - "symfony/rate-limiter": "^5.2|^6.0" + "symfony/mime": "^4.4|^5.0|^6.0" }, "suggest": { "symfony/mime": "To use the file extension guesser" @@ -3136,7 +2805,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.12" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.10" }, "funding": [ { @@ -3152,20 +2821,20 @@ "type": "tidelift" } ], - "time": "2022-08-19T07:33:17+00:00" + "time": "2022-06-19T13:13:40+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.4.12", + "version": "v5.4.10", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be" + "reference": "255ae3b0a488d78fbb34da23d3e0c059874b5948" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/37f660fa3bcd78fe4893ce23ebe934618ec099be", - "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be", + "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/255ae3b0a488d78fbb34da23d3e0c059874b5948", + "reference": "255ae3b0a488d78fbb34da23d3e0c059874b5948", "shasum": "" }, "require": { @@ -3248,7 +2917,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v5.4.12" + "source": "https://github.com/symfony/http-kernel/tree/v5.4.10" }, "funding": [ { @@ -3264,20 +2933,20 @@ "type": "tidelift" } ], - "time": "2022-08-26T14:40:40+00:00" + "time": "2022-06-26T16:57:59+00:00" }, { "name": "symfony/mime", - "version": "v5.4.12", + "version": "v5.4.10", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90" + "reference": "02265e1e5111c3cd7480387af25e82378b7ab9cc" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/mime/zipball/03876e9c5a36f5b45e7d9a381edda5421eff8a90", - "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90", + "url": "https://github.com/gitapi/repos/symfony/mime/zipball/02265e1e5111c3cd7480387af25e82378b7ab9cc", + "reference": "02265e1e5111c3cd7480387af25e82378b7ab9cc", "shasum": "" }, "require": { @@ -3331,7 +3000,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.12" + "source": "https://github.com/symfony/mime/tree/v5.4.10" }, "funding": [ { @@ -3347,7 +3016,7 @@ "type": "tidelift" } ], - "time": "2022-08-19T14:24:03+00:00" + "time": "2022-06-09T12:22:40+00:00" }, { "name": "symfony/polyfill-ctype", @@ -4168,16 +3837,16 @@ }, { "name": "symfony/process", - "version": "v5.4.11", + "version": "v5.4.8", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1" + "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/process/zipball/6e75fe6874cbc7e4773d049616ab450eff537bf1", - "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1", + "url": "https://github.com/gitapi/repos/symfony/process/zipball/597f3fff8e3e91836bb0bd38f5718b56ddbde2f3", + "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3", "shasum": "" }, "require": { @@ -4210,7 +3879,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.11" + "source": "https://github.com/symfony/process/tree/v5.4.8" }, "funding": [ { @@ -4226,20 +3895,20 @@ "type": "tidelift" } ], - "time": "2022-06-27T16:58:25+00:00" + "time": "2022-04-08T05:07:18+00:00" }, { "name": "symfony/routing", - "version": "v5.4.11", + "version": "v5.4.8", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226" + "reference": "e07817bb6244ea33ef5ad31abc4a9288bef3f2f7" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/routing/zipball/3e01ccd9b2a3a4167ba2b3c53612762300300226", - "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226", + "url": "https://github.com/gitapi/repos/symfony/routing/zipball/e07817bb6244ea33ef5ad31abc4a9288bef3f2f7", + "reference": "e07817bb6244ea33ef5ad31abc4a9288bef3f2f7", "shasum": "" }, "require": { @@ -4300,7 +3969,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v5.4.11" + "source": "https://github.com/symfony/routing/tree/v5.4.8" }, "funding": [ { @@ -4316,7 +3985,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-04-18T21:45:37+00:00" }, { "name": "symfony/service-contracts", @@ -4403,16 +4072,16 @@ }, { "name": "symfony/string", - "version": "v5.4.12", + "version": "v5.4.10", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058" + "reference": "4432bc7df82a554b3e413a8570ce2fea90e94097" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/string/zipball/2fc515e512d721bf31ea76bd02fe23ada4640058", - "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058", + "url": "https://github.com/gitapi/repos/symfony/string/zipball/4432bc7df82a554b3e413a8570ce2fea90e94097", + "reference": "4432bc7df82a554b3e413a8570ce2fea90e94097", "shasum": "" }, "require": { @@ -4469,7 +4138,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.12" + "source": "https://github.com/symfony/string/tree/v5.4.10" }, "funding": [ { @@ -4485,20 +4154,20 @@ "type": "tidelift" } ], - "time": "2022-08-12T17:03:11+00:00" + "time": "2022-06-26T15:57:47+00:00" }, { "name": "symfony/translation", - "version": "v5.4.12", + "version": "v5.4.9", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae" + "reference": "1639abc1177d26bcd4320e535e664cef067ab0ca" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/translation/zipball/42ecc77eb4f229ce2df702a648ec93b8478d76ae", - "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae", + "url": "https://github.com/gitapi/repos/symfony/translation/zipball/1639abc1177d26bcd4320e535e664cef067ab0ca", + "reference": "1639abc1177d26bcd4320e535e664cef067ab0ca", "shasum": "" }, "require": { @@ -4566,7 +4235,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.12" + "source": "https://github.com/symfony/translation/tree/v5.4.9" }, "funding": [ { @@ -4582,7 +4251,7 @@ "type": "tidelift" } ], - "time": "2022-08-02T15:52:22+00:00" + "time": "2022-05-06T12:33:37+00:00" }, { "name": "symfony/translation-contracts", @@ -4664,16 +4333,16 @@ }, { "name": "symfony/var-dumper", - "version": "v5.4.11", + "version": "v5.4.9", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861" + "reference": "af52239a330fafd192c773795520dc2dd62b5657" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/b8f306d7b8ef34fb3db3305be97ba8e088fb4861", - "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861", + "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/af52239a330fafd192c773795520dc2dd62b5657", + "reference": "af52239a330fafd192c773795520dc2dd62b5657", "shasum": "" }, "require": { @@ -4733,7 +4402,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.4.11" + "source": "https://github.com/symfony/var-dumper/tree/v5.4.9" }, "funding": [ { @@ -4749,20 +4418,20 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-05-21T10:24:18+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.5", + "version": "2.2.4", "source": { "type": "git", "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "4348a3a06651827a27d989ad1d13efec6bb49b19" + "reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/tijsverkoyen/CssToInlineStyles/zipball/4348a3a06651827a27d989ad1d13efec6bb49b19", - "reference": "4348a3a06651827a27d989ad1d13efec6bb49b19", + "url": "https://github.com/gitapi/repos/tijsverkoyen/CssToInlineStyles/zipball/da444caae6aca7a19c0c140f68c6182e337d5b1c", + "reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c", "shasum": "" }, "require": { @@ -4800,9 +4469,9 @@ "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", "support": { "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", - "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.5" + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.4" }, - "time": "2022-09-12T13:28:28+00:00" + "time": "2021-12-08T09:12:39+00:00" }, { "name": "vlucas/phpdotenv", @@ -5332,29 +5001,28 @@ }, { "name": "amphp/parallel-functions", - "version": "v1.1.0", + "version": "v1.0.0", "source": { "type": "git", "url": "https://github.com/amphp/parallel-functions.git", - "reference": "04e92fcacfc921a56dfe12c23b3265e62593a7cb" + "reference": "af9795d51abfafc3676cbe7e17965479491abaad" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/amphp/parallel-functions/zipball/04e92fcacfc921a56dfe12c23b3265e62593a7cb", - "reference": "04e92fcacfc921a56dfe12c23b3265e62593a7cb", + "url": "https://github.com/gitapi/repos/amphp/parallel-functions/zipball/af9795d51abfafc3676cbe7e17965479491abaad", + "reference": "af9795d51abfafc3676cbe7e17965479491abaad", "shasum": "" }, "require": { "amphp/amp": "^2.0.3", - "amphp/parallel": "^1.4", - "amphp/serialization": "^1.0", - "laravel/serializable-closure": "^1.0", - "php": ">=7.4" + "amphp/parallel": "^1.1", + "opis/closure": "^3.0.7", + "php": ">=7" }, "require-dev": { - "amphp/php-cs-fixer-config": "v2.x-dev", - "amphp/phpunit-util": "^2.0", - "phpunit/phpunit": "^9.5.11" + "amphp/phpunit-util": "^1.0", + "friendsofphp/php-cs-fixer": "^2.9", + "phpunit/phpunit": "^6.5" }, "type": "library", "autoload": { @@ -5378,7 +5046,7 @@ "description": "Parallel processing made simple.", "support": { "issues": "https://github.com/amphp/parallel-functions/issues", - "source": "https://github.com/amphp/parallel-functions/tree/v1.1.0" + "source": "https://github.com/amphp/parallel-functions/tree/master" }, "funding": [ { @@ -5386,7 +5054,7 @@ "type": "github" } ], - "time": "2022-02-03T19:32:41+00:00" + "time": "2020-07-10T17:05:35+00:00" }, { "name": "amphp/parser", @@ -5445,16 +5113,16 @@ }, { "name": "amphp/process", - "version": "v1.1.4", + "version": "v1.1.3", "source": { "type": "git", "url": "https://github.com/amphp/process.git", - "reference": "76e9495fd6818b43a20167cb11d8a67f7744ee0f" + "reference": "f09e3ed3b0a953ccbfff1140f12be4a884f0aa83" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/amphp/process/zipball/76e9495fd6818b43a20167cb11d8a67f7744ee0f", - "reference": "76e9495fd6818b43a20167cb11d8a67f7744ee0f", + "url": "https://github.com/gitapi/repos/amphp/process/zipball/f09e3ed3b0a953ccbfff1140f12be4a884f0aa83", + "reference": "f09e3ed3b0a953ccbfff1140f12be4a884f0aa83", "shasum": "" }, "require": { @@ -5498,7 +5166,7 @@ "homepage": "https://github.com/amphp/process", "support": { "issues": "https://github.com/amphp/process/issues", - "source": "https://github.com/amphp/process/tree/v1.1.4" + "source": "https://github.com/amphp/process/tree/v1.1.3" }, "funding": [ { @@ -5506,7 +5174,7 @@ "type": "github" } ], - "time": "2022-07-06T23:50:12+00:00" + "time": "2021-12-17T19:09:33+00:00" }, { "name": "amphp/serialization", @@ -5709,20 +5377,20 @@ }, { "name": "composer/pcre", - "version": "3.0.0", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" + "reference": "c8e9d27cfc5ed22643c19c160455b473ffd8aabe" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "url": "https://github.com/gitapi/repos/composer/pcre/zipball/c8e9d27cfc5ed22643c19c160455b473ffd8aabe", + "reference": "c8e9d27cfc5ed22643c19c160455b473ffd8aabe", "shasum": "" }, "require": { - "php": "^7.4 || ^8.0" + "php": "^7.2 || ^8.0" }, "require-dev": { "phpstan/phpstan": "^1.3", @@ -5732,7 +5400,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "3.x-dev" + "dev-main": "2.x-dev" } }, "autoload": { @@ -5760,7 +5428,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.0.0" + "source": "https://github.com/composer/pcre/tree/2.0.0" }, "funding": [ { @@ -5776,7 +5444,7 @@ "type": "tidelift" } ], - "time": "2022-02-25T20:21:48+00:00" + "time": "2022-02-25T20:05:29+00:00" }, { "name": "composer/semver", @@ -6084,27 +5752,26 @@ }, { "name": "doctrine/collections", - "version": "1.7.3", + "version": "1.6.8", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "09dde3eb237756190f2de738d3c97cff10a8407b" + "reference": "1958a744696c6bb3bb0d28db2611dc11610e78af" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/09dde3eb237756190f2de738d3c97cff10a8407b", - "reference": "09dde3eb237756190f2de738d3c97cff10a8407b", + "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/1958a744696c6bb3bb0d28db2611dc11610e78af", + "reference": "1958a744696c6bb3bb0d28db2611dc11610e78af", "shasum": "" }, "require": { - "doctrine/deprecations": "^0.5.3 || ^1", "php": "^7.1.3 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9.0 || ^10.0", - "phpstan/phpstan": "^1.4.8", + "doctrine/coding-standard": "^9.0", + "phpstan/phpstan": "^0.12", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.1.5", - "vimeo/psalm": "^4.22" + "vimeo/psalm": "^4.2.1" }, "type": "library", "autoload": { @@ -6148,52 +5815,9 @@ ], "support": { "issues": "https://github.com/doctrine/collections/issues", - "source": "https://github.com/doctrine/collections/tree/1.7.3" - }, - "time": "2022-09-01T19:34:23+00:00" - }, - { - "name": "doctrine/deprecations", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/deprecations.git", - "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de" - }, - "dist": { - "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", - "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", - "shasum": "" - }, - "require": { - "php": "^7.1|^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^9", - "phpunit/phpunit": "^7.5|^8.5|^9.5", - "psr/log": "^1|^2|^3" - }, - "suggest": { - "psr/log": "Allows logging deprecations via PSR-3 logger implementation" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" - } + "source": "https://github.com/doctrine/collections/tree/1.6.8" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", - "homepage": "https://www.doctrine-project.org/", - "support": { - "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/v1.0.0" - }, - "time": "2022-05-02T15:47:09+00:00" + "time": "2021-08-10T18:51:53+00:00" }, { "name": "doctrine/instantiator", @@ -6267,16 +5891,16 @@ }, { "name": "fakerphp/faker", - "version": "v1.20.0", + "version": "v1.19.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b" + "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/37f751c67a5372d4e26353bd9384bc03744ec77b", - "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b", + "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/d7f08a622b3346766325488aa32ddc93ccdecc75", + "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75", "shasum": "" }, "require": { @@ -6303,7 +5927,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v1.20-dev" + "dev-main": "v1.19-dev" } }, "autoload": { @@ -6328,9 +5952,9 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.20.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.19.0" }, - "time": "2022-07-20T13:12:54+00:00" + "time": "2022-02-02T17:38:57+00:00" }, { "name": "felixfbecker/advanced-json-rpc", @@ -6435,16 +6059,16 @@ }, { "name": "gitonomy/gitlib", - "version": "v1.3.6", + "version": "v1.3.5", "source": { "type": "git", "url": "https://github.com/gitonomy/gitlib.git", - "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2" + "reference": "793ffe5826c30e64ea499ea9e4bb353dd0892bef" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/33ae0a2e469accc19d1a06bed63ed93dbf368ae2", - "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2", + "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/793ffe5826c30e64ea499ea9e4bb353dd0892bef", + "reference": "793ffe5826c30e64ea499ea9e4bb353dd0892bef", "shasum": "" }, "require": { @@ -6497,7 +6121,7 @@ "description": "Library for accessing git", "support": { "issues": "https://github.com/gitonomy/gitlib/issues", - "source": "https://github.com/gitonomy/gitlib/tree/v1.3.6" + "source": "https://github.com/gitonomy/gitlib/tree/v1.3.5" }, "funding": [ { @@ -6505,7 +6129,7 @@ "type": "tidelift" } ], - "time": "2022-08-05T09:17:13+00:00" + "time": "2022-03-01T10:56:00+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -6560,23 +6184,23 @@ }, { "name": "kwn/php-rdkafka-stubs", - "version": "v2.2.1", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/kwn/php-rdkafka-stubs.git", - "reference": "23b865d6b3e8fe1f080aa7371dc1da3339361996" + "reference": "7084dd5973d5ef72b5312edae41553ded3d38bb3" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/kwn/php-rdkafka-stubs/zipball/23b865d6b3e8fe1f080aa7371dc1da3339361996", - "reference": "23b865d6b3e8fe1f080aa7371dc1da3339361996", + "url": "https://github.com/gitapi/repos/kwn/php-rdkafka-stubs/zipball/7084dd5973d5ef72b5312edae41553ded3d38bb3", + "reference": "7084dd5973d5ef72b5312edae41553ded3d38bb3", "shasum": "" }, "require": { - "ext-rdkafka": ">=4.0" + "ext-rdkafka": "*" }, "require-dev": { - "phpunit/phpunit": "^8.2.4" + "phpunit/phpunit": "^4.8" }, "type": "library", "notification-url": "https://packagist.org/downloads/", @@ -6592,9 +6216,9 @@ "description": "Rdkafka extension stubs for your IDE", "support": { "issues": "https://github.com/kwn/php-rdkafka-stubs/issues", - "source": "https://github.com/kwn/php-rdkafka-stubs/tree/v2.2.1" + "source": "https://github.com/kwn/php-rdkafka-stubs/tree/master" }, - "time": "2022-08-16T15:27:51+00:00" + "time": "2018-03-13T19:02:21+00:00" }, { "name": "leroy-merlin-br/coding-standard", @@ -6649,16 +6273,16 @@ }, { "name": "mockery/mockery", - "version": "1.5.1", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/mockery/mockery.git", - "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e" + "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/mockery/mockery/zipball/e92dcc83d5a51851baf5f5591d32cb2b16e3684e", - "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e", + "url": "https://github.com/gitapi/repos/mockery/mockery/zipball/c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", + "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", "shasum": "" }, "require": { @@ -6715,9 +6339,9 @@ ], "support": { "issues": "https://github.com/mockery/mockery/issues", - "source": "https://github.com/mockery/mockery/tree/1.5.1" + "source": "https://github.com/mockery/mockery/tree/1.5.0" }, - "time": "2022-09-07T15:32:08+00:00" + "time": "2022-01-20T13:18:17+00:00" }, { "name": "myclabs/deep-copy", @@ -6831,16 +6455,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.15.1", + "version": "v4.14.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900" + "reference": "34bea19b6e03d8153165d8f30bba4c3be86184c1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", + "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/34bea19b6e03d8153165d8f30bba4c3be86184c1", + "reference": "34bea19b6e03d8153165d8f30bba4c3be86184c1", "shasum": "" }, "require": { @@ -6881,9 +6505,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.14.0" }, - "time": "2022-09-04T07:30:47+00:00" + "time": "2022-05-31T20:59:12+00:00" }, { "name": "ondram/ci-detector", @@ -7018,22 +6642,22 @@ }, { "name": "orchestra/testbench", - "version": "v6.25.0", + "version": "v6.24.1", "source": { "type": "git", "url": "https://github.com/orchestral/testbench.git", - "reference": "a65b90b78caed1fdface168ca02af34f3422e513" + "reference": "7b6a225851f6c148a80e241af5cbd833c83e572c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/a65b90b78caed1fdface168ca02af34f3422e513", - "reference": "a65b90b78caed1fdface168ca02af34f3422e513", + "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/7b6a225851f6c148a80e241af5cbd833c83e572c", + "reference": "7b6a225851f6c148a80e241af5cbd833c83e572c", "shasum": "" }, "require": { "laravel/framework": "^8.75", "mockery/mockery": "^1.4.4", - "orchestra/testbench-core": "^6.29", + "orchestra/testbench-core": "^6.28.1", "php": "^7.3 || ^8.0", "phpunit/phpunit": "^8.5.21 || ^9.5.10", "spatie/laravel-ray": "^1.26.2" @@ -7067,7 +6691,7 @@ ], "support": { "issues": "https://github.com/orchestral/testbench/issues", - "source": "https://github.com/orchestral/testbench/tree/v6.25.0" + "source": "https://github.com/orchestral/testbench/tree/v6.24.1" }, "funding": [ { @@ -7079,20 +6703,20 @@ "type": "liberapay" } ], - "time": "2022-08-24T01:41:23+00:00" + "time": "2022-02-08T12:57:17+00:00" }, { "name": "orchestra/testbench-core", - "version": "v6.29.0", + "version": "v6.28.1", "source": { "type": "git", "url": "https://github.com/orchestral/testbench-core.git", - "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4" + "reference": "e66074e825e21b40b3433703dc3f76f2bfebebe0" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/8eeace7d979a7905e6fab77a30a3b05da99459c4", - "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4", + "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/e66074e825e21b40b3433703dc3f76f2bfebebe0", + "reference": "e66074e825e21b40b3433703dc3f76f2bfebebe0", "shasum": "" }, "require": { @@ -7106,7 +6730,7 @@ "laravel/laravel": "8.x-dev", "mockery/mockery": "^1.4.4", "orchestra/canvas": "^6.1", - "phpunit/phpunit": "^8.5.21 || ^9.5.10", + "phpunit/phpunit": "^8.5.21 || ^9.5.10 || ^10.0", "spatie/laravel-ray": "^1.7.1", "symfony/process": "^5.0" }, @@ -7169,7 +6793,7 @@ "type": "liberapay" } ], - "time": "2022-08-24T00:15:20+00:00" + "time": "2022-02-08T12:50:35+00:00" }, { "name": "phar-io/manifest", @@ -7444,52 +7068,51 @@ }, { "name": "phpro/grumphp", - "version": "v1.13.0", + "version": "v1.5.1", "source": { "type": "git", "url": "https://github.com/phpro/grumphp.git", - "reference": "3ec61c1678c4c370f02b05fef606fd561d923c8e" + "reference": "ef3d019f25f6852e61c3af7c8c234b1bf451a34c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpro/grumphp/zipball/3ec61c1678c4c370f02b05fef606fd561d923c8e", - "reference": "3ec61c1678c4c370f02b05fef606fd561d923c8e", + "url": "https://github.com/gitapi/repos/phpro/grumphp/zipball/ef3d019f25f6852e61c3af7c8c234b1bf451a34c", + "reference": "ef3d019f25f6852e61c3af7c8c234b1bf451a34c", "shasum": "" }, "require": { - "amphp/amp": "^2.6", + "amphp/amp": "^2.4", "amphp/parallel": "^1.4", - "amphp/parallel-functions": "^1.1", - "composer-plugin-api": "~2.0", - "doctrine/collections": "^1.6.8", + "amphp/parallel-functions": "1.0", + "composer-plugin-api": "~1.0 || ~2.0", + "doctrine/collections": "^1.6.7", "ext-json": "*", - "gitonomy/gitlib": "^1.3", - "laravel/serializable-closure": "^1.1", - "monolog/monolog": "^2.0 || ^3.0", - "ondram/ci-detector": "^4.0", - "php": "^7.4 || ^8.0", - "psr/container": "^1.1 || ^2.0", - "seld/jsonlint": "~1.8", - "symfony/config": "~5.3 || ~6.0", - "symfony/console": "~5.3 || ~6.0", - "symfony/dependency-injection": "~5.3 || ~6.0", - "symfony/dotenv": "~5.3 || ~6.0", - "symfony/event-dispatcher": "~5.3 || ~6.0", - "symfony/filesystem": "~5.3 || ~6.0", - "symfony/finder": "~5.3 || ~6.0", - "symfony/options-resolver": "~5.3 || ~6.0", - "symfony/process": "~5.3 || ~6.0", - "symfony/yaml": "~5.3 || ~6.0" + "gitonomy/gitlib": "^1.0.3", + "monolog/monolog": "~1.16 || ^2.0", + "ondram/ci-detector": "^3.5 || ^4.0", + "opis/closure": "^3.5", + "php": "^7.3 || ^8.0", + "psr/container": "^1.0", + "seld/jsonlint": "~1.1", + "symfony/config": "~4.4 || ~5.0", + "symfony/console": "~4.4 || ~5.0", + "symfony/dependency-injection": "~4.4 || ~5.0", + "symfony/dotenv": "~4.4 || ~5.0", + "symfony/event-dispatcher": "~4.4 || ~5.0", + "symfony/filesystem": "~4.4 || ~5.0", + "symfony/finder": "~4.4 || ~5.0", + "symfony/options-resolver": "~4.4 || ~5.0", + "symfony/process": "~4.4 || ~5.0", + "symfony/yaml": "~4.4 || ~5.0" }, "require-dev": { - "amphp/sync": "^v1.4", - "brianium/paratest": "^6.4", - "composer/composer": "^2.2.6", - "nikic/php-parser": "~4.13", + "brianium/paratest": "^6.3", + "composer/composer": "^1.10.22 || ^2.0.13", + "nikic/php-parser": "~4.0", "php-parallel-lint/php-parallel-lint": "^1.3", - "phpspec/phpspec": "^7.2", + "phpspec/phpspec": "^7.1", "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.5.13" + "phpunit/phpunit": "^9.5" }, "suggest": { "atoum/atoum": "Lets GrumPHP run your unit tests.", @@ -7554,29 +7177,96 @@ "description": "A composer plugin that enables source code quality checks.", "support": { "issues": "https://github.com/phpro/grumphp/issues", - "source": "https://github.com/phpro/grumphp/tree/v1.13.0" + "source": "https://github.com/phpro/grumphp/tree/v1.5.1" + }, + "time": "2022-02-07T13:28:33+00:00" + }, + { + "name": "phpspec/prophecy", + "version": "v1.15.0", + "source": { + "type": "git", + "url": "https://github.com/phpspec/prophecy.git", + "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13", + "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.2", + "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 || ^7.0", + "phpunit/phpunit": "^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Prophecy\\": "src/Prophecy" + } }, - "time": "2022-06-24T08:32:25+00:00" + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Konstantin Kudryashov", + "email": "ever.zet@gmail.com", + "homepage": "http://everzet.com" + }, + { + "name": "Marcello Duarte", + "email": "marcello.duarte@gmail.com" + } + ], + "description": "Highly opinionated mocking framework for PHP 5.3+", + "homepage": "https://github.com/phpspec/prophecy", + "keywords": [ + "Double", + "Dummy", + "fake", + "mock", + "spy", + "stub" + ], + "support": { + "issues": "https://github.com/phpspec/prophecy/issues", + "source": "https://github.com/phpspec/prophecy/tree/v1.15.0" + }, + "time": "2021-12-08T12:19:24+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.17", + "version": "9.2.15", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8" + "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/aa94dc41e8661fe90c7316849907cba3007b10d8", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8", + "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/2e9da11878c4202f97915c1cb4bb1ca318a63f5f", + "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.14", + "nikic/php-parser": "^4.13.0", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -7625,7 +7315,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.17" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.15" }, "funding": [ { @@ -7633,7 +7323,7 @@ "type": "github" } ], - "time": "2022-08-30T12:24:04+00:00" + "time": "2022-03-07T09:28:20+00:00" }, { "name": "phpunit/php-file-iterator", @@ -7878,16 +7568,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.24", + "version": "9.5.21", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5" + "reference": "0e32b76be457de00e83213528f6bb37e2a38fcb1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", - "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", + "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/0e32b76be457de00e83213528f6bb37e2a38fcb1", + "reference": "0e32b76be457de00e83213528f6bb37e2a38fcb1", "shasum": "" }, "require": { @@ -7902,6 +7592,7 @@ "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", "php": ">=7.3", + "phpspec/prophecy": "^1.12.1", "phpunit/php-code-coverage": "^9.2.13", "phpunit/php-file-iterator": "^3.0.5", "phpunit/php-invoker": "^3.1.1", @@ -7916,9 +7607,12 @@ "sebastian/global-state": "^5.0.1", "sebastian/object-enumerator": "^4.0.3", "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.1", + "sebastian/type": "^3.0", "sebastian/version": "^3.0.2" }, + "require-dev": { + "phpspec/prophecy-phpunit": "^2.0.1" + }, "suggest": { "ext-soap": "*", "ext-xdebug": "*" @@ -7960,7 +7654,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.24" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.21" }, "funding": [ { @@ -7972,7 +7666,7 @@ "type": "github" } ], - "time": "2022-08-30T07:42:16+00:00" + "time": "2022-06-19T12:14:25+00:00" }, { "name": "pimple/pimple", @@ -8250,16 +7944,16 @@ }, { "name": "sebastian/comparator", - "version": "4.0.8", + "version": "4.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a" + "reference": "55f4261989e546dc112258c7a75935a81a7ce382" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a", + "url": "https://github.com/gitapi/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", + "reference": "55f4261989e546dc112258c7a75935a81a7ce382", "shasum": "" }, "require": { @@ -8312,7 +8006,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" }, "funding": [ { @@ -8320,7 +8014,7 @@ "type": "github" } ], - "time": "2022-09-14T12:41:17+00:00" + "time": "2020-10-26T15:49:45+00:00" }, { "name": "sebastian/complexity", @@ -8510,16 +8204,16 @@ }, { "name": "sebastian/exporter", - "version": "4.0.5", + "version": "4.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" + "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", - "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "url": "https://github.com/gitapi/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", + "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", "shasum": "" }, "require": { @@ -8575,7 +8269,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" }, "funding": [ { @@ -8583,7 +8277,7 @@ "type": "github" } ], - "time": "2022-09-14T06:03:37+00:00" + "time": "2021-11-11T14:18:36+00:00" }, { "name": "sebastian/global-state", @@ -8938,16 +8632,16 @@ }, { "name": "sebastian/type", - "version": "3.2.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" + "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "url": "https://github.com/gitapi/repos/sebastianbergmann/type/zipball/b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", + "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", "shasum": "" }, "require": { @@ -8959,7 +8653,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -8982,7 +8676,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.0.0" }, "funding": [ { @@ -8990,7 +8684,7 @@ "type": "github" } ], - "time": "2022-09-12T14:47:03+00:00" + "time": "2022-03-15T09:54:48+00:00" }, { "name": "sebastian/version", @@ -9216,16 +8910,16 @@ }, { "name": "spatie/laravel-ray", - "version": "1.30.0", + "version": "1.29.7", "source": { "type": "git", "url": "https://github.com/spatie/laravel-ray.git", - "reference": "1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6" + "reference": "97b8ccdb9975e3339069765417990e89474254ee" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/spatie/laravel-ray/zipball/1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6", - "reference": "1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6", + "url": "https://github.com/gitapi/repos/spatie/laravel-ray/zipball/97b8ccdb9975e3339069765417990e89474254ee", + "reference": "97b8ccdb9975e3339069765417990e89474254ee", "shasum": "" }, "require": { @@ -9284,7 +8978,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-ray/issues", - "source": "https://github.com/spatie/laravel-ray/tree/1.30.0" + "source": "https://github.com/spatie/laravel-ray/tree/1.29.7" }, "funding": [ { @@ -9296,7 +8990,7 @@ "type": "other" } ], - "time": "2022-07-29T10:02:43+00:00" + "time": "2022-05-27T18:45:58+00:00" }, { "name": "spatie/macroable", @@ -9350,16 +9044,16 @@ }, { "name": "spatie/ray", - "version": "1.36.0", + "version": "1.34.5", "source": { "type": "git", "url": "https://github.com/spatie/ray.git", - "reference": "4a4def8cda4806218341b8204c98375aa8c34323" + "reference": "2d64ea264eecbdc7ec01e4e8b45978cae80815d2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/spatie/ray/zipball/4a4def8cda4806218341b8204c98375aa8c34323", - "reference": "4a4def8cda4806218341b8204c98375aa8c34323", + "url": "https://github.com/gitapi/repos/spatie/ray/zipball/2d64ea264eecbdc7ec01e4e8b45978cae80815d2", + "reference": "2d64ea264eecbdc7ec01e4e8b45978cae80815d2", "shasum": "" }, "require": { @@ -9409,7 +9103,7 @@ ], "support": { "issues": "https://github.com/spatie/ray/issues", - "source": "https://github.com/spatie/ray/tree/1.36.0" + "source": "https://github.com/spatie/ray/tree/1.34.5" }, "funding": [ { @@ -9421,7 +9115,7 @@ "type": "other" } ], - "time": "2022-08-11T14:04:18+00:00" + "time": "2022-06-03T12:32:57+00:00" }, { "name": "squizlabs/php_codesniffer", @@ -9481,16 +9175,16 @@ }, { "name": "symfony/config", - "version": "v5.4.11", + "version": "v5.4.9", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "ec79e03125c1d2477e43dde8528535d90cc78379" + "reference": "8f551fe22672ac7ab2c95fe46d899f960ed4d979" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/config/zipball/ec79e03125c1d2477e43dde8528535d90cc78379", - "reference": "ec79e03125c1d2477e43dde8528535d90cc78379", + "url": "https://github.com/gitapi/repos/symfony/config/zipball/8f551fe22672ac7ab2c95fe46d899f960ed4d979", + "reference": "8f551fe22672ac7ab2c95fe46d899f960ed4d979", "shasum": "" }, "require": { @@ -9540,7 +9234,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v5.4.11" + "source": "https://github.com/symfony/config/tree/v5.4.9" }, "funding": [ { @@ -9556,20 +9250,20 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-05-17T10:39:36+00:00" }, { "name": "symfony/dependency-injection", - "version": "v5.4.11", + "version": "v5.4.10", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62" + "reference": "88d1c0d38c2e60f757fa11d89cfc885f0b7f5171" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a8b9251016e9476db73e25fa836904bc0bf74c62", - "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62", + "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/88d1c0d38c2e60f757fa11d89cfc885f0b7f5171", + "reference": "88d1c0d38c2e60f757fa11d89cfc885f0b7f5171", "shasum": "" }, "require": { @@ -9629,7 +9323,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v5.4.11" + "source": "https://github.com/symfony/dependency-injection/tree/v5.4.10" }, "funding": [ { @@ -9645,7 +9339,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-06-26T13:00:04+00:00" }, { "name": "symfony/dotenv", @@ -9720,16 +9414,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.12", + "version": "v5.4.9", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447" + "reference": "36a017fa4cce1eff1b8e8129ff53513abcef05ba" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/2d67c1f9a1937406a9be3171b4b22250c0a11447", - "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447", + "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/36a017fa4cce1eff1b8e8129ff53513abcef05ba", + "reference": "36a017fa4cce1eff1b8e8129ff53513abcef05ba", "shasum": "" }, "require": { @@ -9764,7 +9458,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.12" + "source": "https://github.com/symfony/filesystem/tree/v5.4.9" }, "funding": [ { @@ -9780,20 +9474,20 @@ "type": "tidelift" } ], - "time": "2022-08-02T13:48:16+00:00" + "time": "2022-05-20T13:55:35+00:00" }, { "name": "symfony/options-resolver", - "version": "v5.4.11", + "version": "v5.4.3", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "54f14e36aa73cb8f7261d7686691fd4d75ea2690" + "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/options-resolver/zipball/54f14e36aa73cb8f7261d7686691fd4d75ea2690", - "reference": "54f14e36aa73cb8f7261d7686691fd4d75ea2690", + "url": "https://github.com/gitapi/repos/symfony/options-resolver/zipball/cc1147cb11af1b43f503ac18f31aa3bec213aba8", + "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8", "shasum": "" }, "require": { @@ -9833,7 +9527,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.4.11" + "source": "https://github.com/symfony/options-resolver/tree/v5.4.3" }, "funding": [ { @@ -9849,7 +9543,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-01-02T09:53:40+00:00" }, { "name": "symfony/stopwatch", @@ -9915,16 +9609,16 @@ }, { "name": "symfony/yaml", - "version": "v5.4.12", + "version": "v5.4.10", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c" + "reference": "04e42926429d9e8b39c174387ab990bf7817f7a2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", - "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", + "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/04e42926429d9e8b39c174387ab990bf7817f7a2", + "reference": "04e42926429d9e8b39c174387ab990bf7817f7a2", "shasum": "" }, "require": { @@ -9970,7 +9664,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.12" + "source": "https://github.com/symfony/yaml/tree/v5.4.10" }, "funding": [ { @@ -9986,7 +9680,7 @@ "type": "tidelift" } ], - "time": "2022-08-02T15:52:22+00:00" + "time": "2022-06-20T11:50:59+00:00" }, { "name": "theseer/tokenizer", @@ -10040,16 +9734,16 @@ }, { "name": "vimeo/psalm", - "version": "4.27.0", + "version": "4.24.0", "source": { "type": "git", "url": "https://github.com/vimeo/psalm.git", - "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff" + "reference": "06dd975cb55d36af80f242561738f16c5f58264f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/faf106e717c37b8c81721845dba9de3d8deed8ff", - "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff", + "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/06dd975cb55d36af80f242561738f16c5f58264f", + "reference": "06dd975cb55d36af80f242561738f16c5f58264f", "shasum": "" }, "require": { @@ -10141,9 +9835,9 @@ ], "support": { "issues": "https://github.com/vimeo/psalm/issues", - "source": "https://github.com/vimeo/psalm/tree/4.27.0" + "source": "https://github.com/vimeo/psalm/tree/4.24.0" }, - "time": "2022-08-31T13:47:09+00:00" + "time": "2022-06-26T11:47:54+00:00" }, { "name": "webmozart/path-util", @@ -10198,16 +9892,16 @@ }, { "name": "zbateson/mail-mime-parser", - "version": "2.2.2", + "version": "2.2.1", "source": { "type": "git", "url": "https://github.com/zbateson/mail-mime-parser.git", - "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86" + "reference": "24955de7ec352b3258c1d4551efd21202cb8710c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/318cd809afebe48e8fb41625b05b25470fb3fa86", - "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86", + "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/24955de7ec352b3258c1d4551efd21202cb8710c", + "reference": "24955de7ec352b3258c1d4551efd21202cb8710c", "shasum": "" }, "require": { @@ -10267,7 +9961,7 @@ "type": "github" } ], - "time": "2022-09-01T15:59:13+00:00" + "time": "2022-02-22T21:35:59+00:00" }, { "name": "zbateson/mb-wrapper", @@ -10338,16 +10032,16 @@ }, { "name": "zbateson/stream-decorators", - "version": "1.0.7", + "version": "1.0.6", "source": { "type": "git", "url": "https://github.com/zbateson/stream-decorators.git", - "reference": "8f8ca208572963258b7e6d91106181706deacd10" + "reference": "3403c4323bd1cd15fe54348b031b26b064c706af" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/stream-decorators/zipball/8f8ca208572963258b7e6d91106181706deacd10", - "reference": "8f8ca208572963258b7e6d91106181706deacd10", + "url": "https://github.com/gitapi/repos/zbateson/stream-decorators/zipball/3403c4323bd1cd15fe54348b031b26b064c706af", + "reference": "3403c4323bd1cd15fe54348b031b26b064c706af", "shasum": "" }, "require": { @@ -10387,7 +10081,7 @@ ], "support": { "issues": "https://github.com/zbateson/stream-decorators/issues", - "source": "https://github.com/zbateson/stream-decorators/tree/1.0.7" + "source": "https://github.com/zbateson/stream-decorators/tree/1.0.6" }, "funding": [ { @@ -10395,7 +10089,7 @@ "type": "github" } ], - "time": "2022-09-08T15:44:55+00:00" + "time": "2021-07-08T19:01:59+00:00" } ], "aliases": [], @@ -10404,9 +10098,9 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "ext-rdkafka": ">=4.0", + "ext-rdkafka": "*", "ext-json": "*", - "php": ">=7.4" + "php": ">=7.1" }, "platform-dev": [], "plugin-api-version": "2.0.0" diff --git a/docker/Dockerfile b/docker/Dockerfile index 8ec727b4..4185716c 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,4 +1,4 @@ -FROM leroymerlinbr/php:7.4 +FROM leroymerlinbr/php:7.3 LABEL maintainer="boitata@leroymerlin.com.br" USER root:root diff --git a/grumphp.yml b/grumphp.yml index f4d4df5d..880affc2 100644 --- a/grumphp.yml +++ b/grumphp.yml @@ -11,7 +11,6 @@ grumphp: standard: [ phpcs.xml ] psalm: config: psalm.xml - ignore_patterns: [ 'tests' ] threads: 4 git_commit_message: enforce_capitalized_subject: false diff --git a/src/Producer/Poll.php b/src/Producer/Poll.php index 6f770363..0f65815e 100644 --- a/src/Producer/Poll.php +++ b/src/Producer/Poll.php @@ -75,7 +75,7 @@ public function flushMessage(): void } for ($flushAttempts = 0; $flushAttempts < $this->maxFlushAttempts; $flushAttempts++) { - if (0 === $this->producer->flush($this->timeout)) { + if (0 === $this->producer->poll($this->timeout)) { return; } diff --git a/tests/Integration/ProducerTest.php b/tests/Integration/ProducerTest.php index a0bd7b5a..d642b21b 100644 --- a/tests/Integration/ProducerTest.php +++ b/tests/Integration/ProducerTest.php @@ -35,7 +35,6 @@ public function testShouldRunAProducerAndReceiveMessagesWithAHighLevelConsumer() { // Given That I $this->haveAConsumerHandlerConfigured(); - $this->haveNoPartitionConfigured(); $this->haveSomeRandomMessagesProduced(); // I Expect That @@ -181,9 +180,4 @@ private function haveFourProducedMessages(): void $this->produceRecordMessage($this->firstLowLevelMessage); $this->produceRecordMessage($this->secondLowLevelMessage); } - - private function haveNoPartitionConfigured(): void - { - config(['kafka.topics.default.consumer.consumer_groups.test-consumer-group.partition' => -1]); - } } diff --git a/tests/Integration/ProducerWithAvroTest.php b/tests/Integration/ProducerWithAvroTest.php index 5a1aa06c..0e7a0c7c 100644 --- a/tests/Integration/ProducerWithAvroTest.php +++ b/tests/Integration/ProducerWithAvroTest.php @@ -21,7 +21,6 @@ public function testShouldRunAProducerMessagesWithAAvroSchema(): void // When I $this->haveSomeRandomMessagesProduced(); - $this->expectNotToPerformAssertions(); } protected function haveAHandlerConfigured(): void diff --git a/tests/Unit/Connectors/Consumer/FactoryTest.php b/tests/Unit/Connectors/Consumer/FactoryTest.php index 2f96f3c6..8080d39d 100644 --- a/tests/Unit/Connectors/Consumer/FactoryTest.php +++ b/tests/Unit/Connectors/Consumer/FactoryTest.php @@ -18,7 +18,7 @@ protected function setUp(): void 'kafka' => [ 'brokers' => [ 'default' => [ - 'connections' => 'kafka:9092', + 'connections' => 'kafka:123', ], ], 'topics' => [ diff --git a/tests/Unit/Connectors/Consumer/HighLevelTest.php b/tests/Unit/Connectors/Consumer/HighLevelTest.php index b4f40987..1afca75f 100644 --- a/tests/Unit/Connectors/Consumer/HighLevelTest.php +++ b/tests/Unit/Connectors/Consumer/HighLevelTest.php @@ -13,7 +13,7 @@ public function testItShouldMakeConnectorSetup(): void // Set $configManager = new ConsumerConfigManager(); $configManager->set([ - 'connections' => 'kafka:9092', + 'connections' => 'kafka:123', 'consumer_group' => 'some-group', 'topic_id' => 'some_topic', 'offset_reset' => 'earliest', diff --git a/tests/Unit/Connectors/Consumer/LowLevelTest.php b/tests/Unit/Connectors/Consumer/LowLevelTest.php index e3e00a0c..93394fce 100644 --- a/tests/Unit/Connectors/Consumer/LowLevelTest.php +++ b/tests/Unit/Connectors/Consumer/LowLevelTest.php @@ -13,7 +13,7 @@ public function testItShouldMakeConnectorSetup(): void // Set $configManager = new ConsumerConfigManager(); $configManager->set([ - 'connections' => 'kafka:9092', + 'connections' => 'kafka:123', 'consumer_group' => 'some-group', 'topic' => 'some_topic', 'offset_reset' => 'earliest', diff --git a/tests/Unit/Console/ConsumerCommandTest.php b/tests/Unit/Console/ConsumerCommandTest.php index 7da7ecee..566237fa 100644 --- a/tests/Unit/Console/ConsumerCommandTest.php +++ b/tests/Unit/Console/ConsumerCommandTest.php @@ -17,7 +17,7 @@ protected function setUp(): void 'kafka' => [ 'brokers' => [ 'default' => [ - 'connections' => 'kafka:9092', + 'connections' => 'test_kafka:6680', 'auth' => [], ], ], diff --git a/tests/Unit/Producer/PollTest.php b/tests/Unit/Producer/PollTest.php index c6b41336..b2b72a90 100644 --- a/tests/Unit/Producer/PollTest.php +++ b/tests/Unit/Producer/PollTest.php @@ -26,7 +26,7 @@ public function testItShouldHandleMessageWithoutAcknowledgment(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations - $kafkaProducer->shouldReceive('flush') + $kafkaProducer->shouldReceive('poll') ->never(); // Actions @@ -52,7 +52,7 @@ public function testShouldThrowExceptionWhenFlushFailed(): void // Expectations $kafkaProducer->expects() - ->flush(4000) + ->poll(4000) ->times(10) ->andReturn(1); @@ -80,7 +80,7 @@ public function testItShouldHandleResponseEveryTimeWhenAsyncModeIsTrue(): void // Expectations $kafkaProducer->expects() - ->flush(4000) + ->poll(4000) ->times(3) ->andReturn(0); diff --git a/tests/Unit/ProducerTest.php b/tests/Unit/ProducerTest.php index df3460d8..bdf9806b 100644 --- a/tests/Unit/ProducerTest.php +++ b/tests/Unit/ProducerTest.php @@ -127,7 +127,10 @@ public function testItShouldProduceRecordAsStringThroughMiddlewareQueue(): void ->withAnyArgs(); // Actions - $producer->produce($producerHandler); + $result = $producer->produce($producerHandler); + + // Assertions + $this->assertNull($result); } public function testItShouldThrowJsonExceptionWhenPassingMalFormattedArray(): void @@ -195,7 +198,7 @@ public function testItShouldThrowJsonExceptionWhenPassingMalFormattedArray(): vo ->andReturn($producerTopic); $kafkaProducer->expects() - ->flush(1000) + ->poll(1000) ->andReturn(0); $producerMiddleware->expects() @@ -271,7 +274,7 @@ public function testShouldBuildDispatcher(): void ->andReturn($producerTopic); $kafkaProducer->expects() - ->flush(1000) + ->poll(1000) ->andReturn(0); // Actions @@ -345,7 +348,7 @@ public function testShouldBuildDispatcherWithConfigOptions(): void ->andReturn($producerTopic); $kafkaProducer->expects() - ->flush(1000) + ->poll(1000) ->andReturn(0); // Actions From 961f030ed56edbe692192d93b8d46c88fc86de2b Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Mon, 26 Sep 2022 16:31:13 -0300 Subject: [PATCH 10/28] Revert "chore(rdkafka): revert flush method" --- composer.json | 6 +- composer.lock | 1254 ++++++++++------- docker/Dockerfile | 2 +- grumphp.yml | 1 + src/Producer/Poll.php | 2 +- tests/Integration/ProducerTest.php | 6 + tests/Integration/ProducerWithAvroTest.php | 1 + .../Unit/Connectors/Consumer/FactoryTest.php | 2 +- .../Connectors/Consumer/HighLevelTest.php | 2 +- .../Unit/Connectors/Consumer/LowLevelTest.php | 2 +- tests/Unit/Console/ConsumerCommandTest.php | 2 +- tests/Unit/Producer/PollTest.php | 6 +- tests/Unit/ProducerTest.php | 11 +- 13 files changed, 804 insertions(+), 493 deletions(-) diff --git a/composer.json b/composer.json index 28df9049..c146253b 100644 --- a/composer.json +++ b/composer.json @@ -7,20 +7,20 @@ ], "description": "Kafka package for laravel applications", "require": { - "ext-rdkafka": "*", + "ext-rdkafka": ">=4.0", "ext-json": "*", "guzzlehttp/guzzle": "^6.5.0 || ^7.0", "illuminate/support": "^5.5 || ^6.0 || ^7.0 || ^8.0", "illuminate/console": "^5.5 || ^6.0 || ^7.0 || ^8.0", "illuminate/config": "^5.5 || ^6.0 || ^7.0 || ^8.0", - "php": ">=7.1", + "php": ">=7.4", "wikimedia/avro": "^1.7" }, "require-dev": { "leroy-merlin-br/coding-standard": "^1.0.1", "phpunit/phpunit": "^9.4.3", "mockery/mockery": "^1.3.0", - "kwn/php-rdkafka-stubs": "~1.1.0", + "kwn/php-rdkafka-stubs": "^2.2.0", "orchestra/testbench": "^6.0", "dms/phpunit-arraysubset-asserts": "^0.2.1", "phpro/grumphp": "^1.5", diff --git a/composer.lock b/composer.lock index a5b88475..07f9f646 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": "6f57d9ed1bb3086e3155d3ac4204fdfe", + "content-hash": "04d9d60bb62fd311c7dcfda058b5a296", "packages": [ { "name": "brick/math", @@ -66,30 +66,105 @@ ], "time": "2021-08-15T20:50:18+00:00" }, + { + "name": "dflydev/dot-access-data", + "version": "v3.0.1", + "source": { + "type": "git", + "url": "https://github.com/dflydev/dflydev-dot-access-data.git", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.42", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", + "scrutinizer/ocular": "1.6.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^3.14" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Dflydev\\DotAccessData\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dragonfly Development Inc.", + "email": "info@dflydev.com", + "homepage": "http://dflydev.com" + }, + { + "name": "Beau Simensen", + "email": "beau@dflydev.com", + "homepage": "http://beausimensen.com" + }, + { + "name": "Carlos Frutos", + "email": "carlos@kiwing.it", + "homepage": "https://github.com/cfrutos" + }, + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com" + } + ], + "description": "Given a deep data structure, access data by dot notation.", + "homepage": "https://github.com/dflydev/dflydev-dot-access-data", + "keywords": [ + "access", + "data", + "dot", + "notation" + ], + "support": { + "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" + }, + "time": "2021-08-13T13:06:58+00:00" + }, { "name": "doctrine/inflector", - "version": "2.0.4", + "version": "2.0.5", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89" + "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", - "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", + "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", + "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", "shasum": "" }, "require": { "php": "^7.2 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^8.2", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpstan/phpstan-strict-rules": "^0.12", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", - "vimeo/psalm": "^4.10" + "doctrine/coding-standard": "^9", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.3", + "phpunit/phpunit": "^8.5 || ^9.5", + "vimeo/psalm": "^4.25" }, "type": "library", "autoload": { @@ -139,7 +214,7 @@ ], "support": { "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.4" + "source": "https://github.com/doctrine/inflector/tree/2.0.5" }, "funding": [ { @@ -155,7 +230,7 @@ "type": "tidelift" } ], - "time": "2021-10-22T20:16:43+00:00" + "time": "2022-09-07T09:01:28+00:00" }, { "name": "doctrine/lexer", @@ -235,16 +310,16 @@ }, { "name": "dragonmantank/cron-expression", - "version": "v3.3.1", + "version": "v3.3.2", "source": { "type": "git", "url": "https://github.com/dragonmantank/cron-expression.git", - "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa" + "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/dragonmantank/cron-expression/zipball/be85b3f05b46c39bbc0d95f6c071ddff669510fa", - "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa", + "url": "https://github.com/gitapi/repos/dragonmantank/cron-expression/zipball/782ca5968ab8b954773518e9e49a6f892a34b2a8", + "reference": "782ca5968ab8b954773518e9e49a6f892a34b2a8", "shasum": "" }, "require": { @@ -284,7 +359,7 @@ ], "support": { "issues": "https://github.com/dragonmantank/cron-expression/issues", - "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.1" + "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.2" }, "funding": [ { @@ -292,7 +367,7 @@ "type": "github" } ], - "time": "2022-01-18T15:43:28+00:00" + "time": "2022-09-10T18:51:20+00:00" }, { "name": "egulias/email-validator", @@ -364,24 +439,24 @@ }, { "name": "graham-campbell/result-type", - "version": "v1.0.4", + "version": "v1.1.0", "source": { "type": "git", "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "0690bde05318336c7221785f2a932467f98b64ca" + "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/GrahamCampbell/Result-Type/zipball/0690bde05318336c7221785f2a932467f98b64ca", - "reference": "0690bde05318336c7221785f2a932467f98b64ca", + "url": "https://github.com/gitapi/repos/GrahamCampbell/Result-Type/zipball/a878d45c1914464426dc94da61c9e1d36ae262a8", + "reference": "a878d45c1914464426dc94da61c9e1d36ae262a8", "shasum": "" }, "require": { - "php": "^7.0 || ^8.0", - "phpoption/phpoption": "^1.8" + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9" }, "require-dev": { - "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" + "phpunit/phpunit": "^8.5.28 || ^9.5.21" }, "type": "library", "autoload": { @@ -410,7 +485,7 @@ ], "support": { "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.4" + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.0" }, "funding": [ { @@ -422,20 +497,20 @@ "type": "tidelift" } ], - "time": "2021-11-21T21:41:47+00:00" + "time": "2022-07-30T15:56:11+00:00" }, { "name": "guzzlehttp/guzzle", - "version": "7.4.5", + "version": "7.5.0", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "1dd98b0564cb3f6bd16ce683cb755f94c10fbd82" + "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/guzzle/zipball/1dd98b0564cb3f6bd16ce683cb755f94c10fbd82", - "reference": "1dd98b0564cb3f6bd16ce683cb755f94c10fbd82", + "url": "https://github.com/gitapi/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", "shasum": "" }, "require": { @@ -450,10 +525,10 @@ "psr/http-client-implementation": "1.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", + "bamarni/composer-bin-plugin": "^1.8.1", "ext-curl": "*", "php-http/client-integration-tests": "^3.0", - "phpunit/phpunit": "^8.5.5 || ^9.3.5", + "phpunit/phpunit": "^8.5.29 || ^9.5.23", "psr/log": "^1.1 || ^2.0 || ^3.0" }, "suggest": { @@ -463,8 +538,12 @@ }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, "branch-alias": { - "dev-master": "7.4-dev" + "dev-master": "7.5-dev" } }, "autoload": { @@ -530,7 +609,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.4.5" + "source": "https://github.com/guzzle/guzzle/tree/7.5.0" }, "funding": [ { @@ -546,20 +625,20 @@ "type": "tidelift" } ], - "time": "2022-06-20T22:16:13+00:00" + "time": "2022-08-28T15:39:27+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.5.1", + "version": "1.5.2", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da" + "reference": "b94b2807d85443f9719887892882d0329d1e2598" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/promises/zipball/fe752aedc9fd8fcca3fe7ad05d419d32998a06da", - "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da", + "url": "https://github.com/gitapi/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", + "reference": "b94b2807d85443f9719887892882d0329d1e2598", "shasum": "" }, "require": { @@ -614,7 +693,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.1" + "source": "https://github.com/guzzle/promises/tree/1.5.2" }, "funding": [ { @@ -630,20 +709,20 @@ "type": "tidelift" } ], - "time": "2021-10-22T20:56:57+00:00" + "time": "2022-08-28T14:55:35+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.4.0", + "version": "2.4.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "13388f00956b1503577598873fffb5ae994b5737" + "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/13388f00956b1503577598873fffb5ae994b5737", - "reference": "13388f00956b1503577598873fffb5ae994b5737", + "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/69568e4293f4fa993f3b0e51c9723e1e17c41379", + "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379", "shasum": "" }, "require": { @@ -657,15 +736,19 @@ "psr/http-message-implementation": "1.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", + "bamarni/composer-bin-plugin": "^1.8.1", "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.8 || ^9.3.10" + "phpunit/phpunit": "^8.5.29 || ^9.5.23" }, "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, "branch-alias": { "dev-master": "2.4-dev" } @@ -729,7 +812,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.0" + "source": "https://github.com/guzzle/psr7/tree/2.4.1" }, "funding": [ { @@ -745,20 +828,20 @@ "type": "tidelift" } ], - "time": "2022-06-20T21:43:11+00:00" + "time": "2022-08-28T14:45:39+00:00" }, { "name": "laravel/framework", - "version": "v8.83.18", + "version": "v8.83.23", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "db8188e9cc8359a5c6706fa9d9f55aad7f235077" + "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/framework/zipball/db8188e9cc8359a5c6706fa9d9f55aad7f235077", - "reference": "db8188e9cc8359a5c6706fa9d9f55aad7f235077", + "url": "https://github.com/gitapi/repos/laravel/framework/zipball/bdc707f8b9bcad289b24cd182d98ec7480ac4491", + "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491", "shasum": "" }, "require": { @@ -918,29 +1001,30 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-06-28T14:30:38+00:00" + "time": "2022-07-26T13:30:00+00:00" }, { "name": "laravel/serializable-closure", - "version": "v1.2.0", + "version": "v1.2.2", "source": { "type": "git", "url": "https://github.com/laravel/serializable-closure.git", - "reference": "09f0e9fb61829f628205b7c94906c28740ff9540" + "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/serializable-closure/zipball/09f0e9fb61829f628205b7c94906c28740ff9540", - "reference": "09f0e9fb61829f628205b7c94906c28740ff9540", + "url": "https://github.com/gitapi/repos/laravel/serializable-closure/zipball/47afb7fae28ed29057fdca37e16a84f90cc62fae", + "reference": "47afb7fae28ed29057fdca37e16a84f90cc62fae", "shasum": "" }, "require": { "php": "^7.3|^8.0" }, "require-dev": { - "pestphp/pest": "^1.18", - "phpstan/phpstan": "^0.12.98", - "symfony/var-dumper": "^5.3" + "nesbot/carbon": "^2.61", + "pestphp/pest": "^1.21.3", + "phpstan/phpstan": "^1.8.2", + "symfony/var-dumper": "^5.4.11" }, "type": "library", "extra": { @@ -977,46 +1061,58 @@ "issues": "https://github.com/laravel/serializable-closure/issues", "source": "https://github.com/laravel/serializable-closure" }, - "time": "2022-05-16T17:09:47+00:00" + "time": "2022-09-08T13:45:54+00:00" }, { "name": "league/commonmark", - "version": "1.6.7", + "version": "2.3.5", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "2b8185c13bc9578367a5bf901881d1c1b5bbd09b" + "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/2b8185c13bc9578367a5bf901881d1c1b5bbd09b", - "reference": "2b8185c13bc9578367a5bf901881d1c1b5bbd09b", + "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/84d74485fdb7074f4f9dd6f02ab957b1de513257", + "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257", "shasum": "" }, "require": { "ext-mbstring": "*", - "php": "^7.1 || ^8.0" - }, - "conflict": { - "scrutinizer/ocular": "1.7.*" + "league/config": "^1.1.1", + "php": "^7.4 || ^8.0", + "psr/event-dispatcher": "^1.0", + "symfony/deprecation-contracts": "^2.1 || ^3.0", + "symfony/polyfill-php80": "^1.16" }, "require-dev": { - "cebe/markdown": "~1.0", - "commonmark/commonmark.js": "0.29.2", - "erusev/parsedown": "~1.0", + "cebe/markdown": "^1.0", + "commonmark/cmark": "0.30.0", + "commonmark/commonmark.js": "0.30.0", + "composer/package-versions-deprecated": "^1.8", + "embed/embed": "^4.4", + "erusev/parsedown": "^1.0", "ext-json": "*", "github/gfm": "0.29.0", - "michelf/php-markdown": "~1.4", - "mikehaertl/php-shellcommand": "^1.4", - "phpstan/phpstan": "^0.12.90", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.2", - "scrutinizer/ocular": "^1.5", - "symfony/finder": "^4.2" + "michelf/php-markdown": "^1.4", + "nyholm/psr7": "^1.5", + "phpstan/phpstan": "^1.8.2", + "phpunit/phpunit": "^9.5.21", + "scrutinizer/ocular": "^1.8.1", + "symfony/finder": "^5.3 | ^6.0", + "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", + "unleashedtech/php-coding-standard": "^3.1.1", + "vimeo/psalm": "^4.24.0" + }, + "suggest": { + "symfony/yaml": "v2.3+ required if using the Front Matter extension" }, - "bin": [ - "bin/commonmark" - ], "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.4-dev" + } + }, "autoload": { "psr-4": { "League\\CommonMark\\": "src" @@ -1034,7 +1130,7 @@ "role": "Lead Developer" } ], - "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and Github-Flavored Markdown (GFM)", + "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", "homepage": "https://commonmark.thephpleague.com", "keywords": [ "commonmark", @@ -1048,6 +1144,7 @@ ], "support": { "docs": "https://commonmark.thephpleague.com/", + "forum": "https://github.com/thephpleague/commonmark/discussions", "issues": "https://github.com/thephpleague/commonmark/issues", "rss": "https://github.com/thephpleague/commonmark/releases.atom", "source": "https://github.com/thephpleague/commonmark" @@ -1070,7 +1167,89 @@ "type": "tidelift" } ], - "time": "2022-01-13T17:18:13+00:00" + "time": "2022-07-29T10:59:45+00:00" + }, + { + "name": "league/config", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/config.git", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^3.0.1", + "nette/schema": "^1.2", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.90", + "phpunit/phpunit": "^9.5.5", + "scrutinizer/ocular": "^1.8.1", + "unleashedtech/php-coding-standard": "^3.1", + "vimeo/psalm": "^4.7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Define configuration arrays with strict schemas and access values with dot notation", + "homepage": "https://config.thephpleague.com", + "keywords": [ + "array", + "config", + "configuration", + "dot", + "dot-access", + "nested", + "schema" + ], + "support": { + "docs": "https://config.thephpleague.com/", + "issues": "https://github.com/thephpleague/config/issues", + "rss": "https://github.com/thephpleague/config/releases.atom", + "source": "https://github.com/thephpleague/config" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + } + ], + "time": "2021-08-14T12:15:32+00:00" }, { "name": "league/flysystem", @@ -1224,16 +1403,16 @@ }, { "name": "monolog/monolog", - "version": "2.7.0", + "version": "2.8.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "5579edf28aee1190a798bfa5be8bc16c563bd524" + "reference": "720488632c590286b88b80e62aa3d3d551ad4a50" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/Seldaek/monolog/zipball/5579edf28aee1190a798bfa5be8bc16c563bd524", - "reference": "5579edf28aee1190a798bfa5be8bc16c563bd524", + "url": "https://github.com/gitapi/repos/Seldaek/monolog/zipball/720488632c590286b88b80e62aa3d3d551ad4a50", + "reference": "720488632c590286b88b80e62aa3d3d551ad4a50", "shasum": "" }, "require": { @@ -1253,11 +1432,10 @@ "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", - "php-console/php-console": "^3.1.3", "phpspec/prophecy": "^1.15", "phpstan/phpstan": "^0.12.91", "phpunit/phpunit": "^8.5.14", - "predis/predis": "^1.1", + "predis/predis": "^1.1 || ^2.0", "rollbar/rollbar": "^1.3 || ^2 || ^3", "ruflin/elastica": "^7", "swiftmailer/swiftmailer": "^5.3|^6.0", @@ -1277,7 +1455,6 @@ "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", - "php-console/php-console": "Allow sending log messages to Google Chrome", "rollbar/rollbar": "Allow sending log messages to Rollbar", "ruflin/elastica": "Allow sending log messages to an Elastic Search server" }, @@ -1312,7 +1489,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/2.7.0" + "source": "https://github.com/Seldaek/monolog/tree/2.8.0" }, "funding": [ { @@ -1324,20 +1501,20 @@ "type": "tidelift" } ], - "time": "2022-06-09T08:59:12+00:00" + "time": "2022-07-24T11:55:47+00:00" }, { "name": "nesbot/carbon", - "version": "2.59.1", + "version": "2.62.1", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "a9000603ea337c8df16cc41f8b6be95a65f4d0f5" + "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/a9000603ea337c8df16cc41f8b6be95a65f4d0f5", - "reference": "a9000603ea337c8df16cc41f8b6be95a65f4d0f5", + "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", + "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", "shasum": "" }, "require": { @@ -1426,7 +1603,154 @@ "type": "tidelift" } ], - "time": "2022-06-29T21:43:55+00:00" + "time": "2022-09-02T07:48:13+00:00" + }, + { + "name": "nette/schema", + "version": "v1.2.2", + "source": { + "type": "git", + "url": "https://github.com/nette/schema.git", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", + "shasum": "" + }, + "require": { + "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", + "php": ">=7.1 <8.2" + }, + "require-dev": { + "nette/tester": "^2.3 || ^2.4", + "phpstan/phpstan-nette": "^0.12", + "tracy/tracy": "^2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "📐 Nette Schema: validating data structures against a given Schema.", + "homepage": "https://nette.org", + "keywords": [ + "config", + "nette" + ], + "support": { + "issues": "https://github.com/nette/schema/issues", + "source": "https://github.com/nette/schema/tree/v1.2.2" + }, + "time": "2021-10-15T11:40:02+00:00" + }, + { + "name": "nette/utils", + "version": "v3.2.8", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/nette/utils/zipball/02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", + "reference": "02a54c4c872b99e4ec05c4aec54b5a06eb0f6368", + "shasum": "" + }, + "require": { + "php": ">=7.2 <8.3" + }, + "conflict": { + "nette/di": "<3.0.6" + }, + "require-dev": { + "nette/tester": "~2.0", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.3" + }, + "suggest": { + "ext-gd": "to use Image", + "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", + "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", + "ext-json": "to use Nette\\Utils\\Json", + "ext-mbstring": "to use Strings::lower() etc...", + "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", + "ext-xml": "to use Strings::length() etc. when mbstring is not available" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", + "homepage": "https://nette.org", + "keywords": [ + "array", + "core", + "datetime", + "images", + "json", + "nette", + "paginator", + "password", + "slugify", + "string", + "unicode", + "utf-8", + "utility", + "validation" + ], + "support": { + "issues": "https://github.com/nette/utils/issues", + "source": "https://github.com/nette/utils/tree/v3.2.8" + }, + "time": "2022-09-12T23:36:20+00:00" }, { "name": "opis/closure", @@ -1495,29 +1819,33 @@ }, { "name": "phpoption/phpoption", - "version": "1.8.1", + "version": "1.9.0", "source": { "type": "git", "url": "https://github.com/schmittjoh/php-option.git", - "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15" + "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/schmittjoh/php-option/zipball/eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", - "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", + "url": "https://github.com/gitapi/repos/schmittjoh/php-option/zipball/dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", + "reference": "dc5ff11e274a90cc1c743f66c9ad700ce50db9ab", "shasum": "" }, "require": { - "php": "^7.0 || ^8.0" + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" + "bamarni/composer-bin-plugin": "^1.8", + "phpunit/phpunit": "^8.5.28 || ^9.5.21" }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": true + }, "branch-alias": { - "dev-master": "1.8-dev" + "dev-master": "1.9-dev" } }, "autoload": { @@ -1550,7 +1878,7 @@ ], "support": { "issues": "https://github.com/schmittjoh/php-option/issues", - "source": "https://github.com/schmittjoh/php-option/tree/1.8.1" + "source": "https://github.com/schmittjoh/php-option/tree/1.9.0" }, "funding": [ { @@ -1562,24 +1890,24 @@ "type": "tidelift" } ], - "time": "2021-12-04T23:24:31+00:00" + "time": "2022-07-30T15:51:26+00:00" }, { "name": "psr/container", - "version": "1.1.1", + "version": "1.1.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", - "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", + "url": "https://github.com/gitapi/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", "shasum": "" }, "require": { - "php": ">=7.2.0" + "php": ">=7.4.0" }, "type": "library", "autoload": { @@ -1608,9 +1936,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.1" + "source": "https://github.com/php-fig/container/tree/1.1.2" }, - "time": "2021-03-05T17:36:06+00:00" + "time": "2021-11-05T16:50:12+00:00" }, { "name": "psr/event-dispatcher", @@ -2222,16 +2550,16 @@ }, { "name": "symfony/console", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "4d671ab4ddac94ee439ea73649c69d9d200b5000" + "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/console/zipball/4d671ab4ddac94ee439ea73649c69d9d200b5000", - "reference": "4d671ab4ddac94ee439ea73649c69d9d200b5000", + "url": "https://github.com/gitapi/repos/symfony/console/zipball/c072aa8f724c3af64e2c7a96b796a4863d24dba1", + "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1", "shasum": "" }, "require": { @@ -2301,7 +2629,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.10" + "source": "https://github.com/symfony/console/tree/v5.4.12" }, "funding": [ { @@ -2317,20 +2645,20 @@ "type": "tidelift" } ], - "time": "2022-06-26T13:00:04+00:00" + "time": "2022-08-17T13:18:05+00:00" }, { "name": "symfony/css-selector", - "version": "v5.4.3", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "b0a190285cd95cb019237851205b8140ef6e368e" + "reference": "c1681789f059ab756001052164726ae88512ae3d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/css-selector/zipball/b0a190285cd95cb019237851205b8140ef6e368e", - "reference": "b0a190285cd95cb019237851205b8140ef6e368e", + "url": "https://github.com/gitapi/repos/symfony/css-selector/zipball/c1681789f059ab756001052164726ae88512ae3d", + "reference": "c1681789f059ab756001052164726ae88512ae3d", "shasum": "" }, "require": { @@ -2367,7 +2695,7 @@ "description": "Converts CSS selectors to XPath expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/css-selector/tree/v5.4.3" + "source": "https://github.com/symfony/css-selector/tree/v5.4.11" }, "funding": [ { @@ -2383,7 +2711,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-06-27T16:58:25+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2454,16 +2782,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.4.9", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "c116cda1f51c678782768dce89a45f13c949455d" + "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/c116cda1f51c678782768dce89a45f13c949455d", - "reference": "c116cda1f51c678782768dce89a45f13c949455d", + "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/f75d17cb4769eb38cd5fccbda95cd80a054d35c8", + "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8", "shasum": "" }, "require": { @@ -2505,7 +2833,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v5.4.9" + "source": "https://github.com/symfony/error-handler/tree/v5.4.11" }, "funding": [ { @@ -2521,7 +2849,7 @@ "type": "tidelift" } ], - "time": "2022-05-21T13:57:48+00:00" + "time": "2022-07-29T07:37:50+00:00" }, { "name": "symfony/event-dispatcher", @@ -2689,16 +3017,16 @@ }, { "name": "symfony/finder", - "version": "v5.4.8", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "9b630f3427f3ebe7cd346c277a1408b00249dad9" + "reference": "7872a66f57caffa2916a584db1aa7f12adc76f8c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/finder/zipball/9b630f3427f3ebe7cd346c277a1408b00249dad9", - "reference": "9b630f3427f3ebe7cd346c277a1408b00249dad9", + "url": "https://github.com/gitapi/repos/symfony/finder/zipball/7872a66f57caffa2916a584db1aa7f12adc76f8c", + "reference": "7872a66f57caffa2916a584db1aa7f12adc76f8c", "shasum": "" }, "require": { @@ -2732,7 +3060,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.8" + "source": "https://github.com/symfony/finder/tree/v5.4.11" }, "funding": [ { @@ -2748,20 +3076,20 @@ "type": "tidelift" } ], - "time": "2022-04-15T08:07:45+00:00" + "time": "2022-07-29T07:37:50+00:00" }, { "name": "symfony/http-foundation", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "e7793b7906f72a8cc51054fbca9dcff7a8af1c1e" + "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/e7793b7906f72a8cc51054fbca9dcff7a8af1c1e", - "reference": "e7793b7906f72a8cc51054fbca9dcff7a8af1c1e", + "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/f4bfe9611b113b15d98a43da68ec9b5a00d56791", + "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791", "shasum": "" }, "require": { @@ -2773,8 +3101,11 @@ "require-dev": { "predis/predis": "~1.0", "symfony/cache": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/mime": "^4.4|^5.0|^6.0" + "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4", + "symfony/mime": "^4.4|^5.0|^6.0", + "symfony/rate-limiter": "^5.2|^6.0" }, "suggest": { "symfony/mime": "To use the file extension guesser" @@ -2805,7 +3136,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.10" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.12" }, "funding": [ { @@ -2821,20 +3152,20 @@ "type": "tidelift" } ], - "time": "2022-06-19T13:13:40+00:00" + "time": "2022-08-19T07:33:17+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "255ae3b0a488d78fbb34da23d3e0c059874b5948" + "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/255ae3b0a488d78fbb34da23d3e0c059874b5948", - "reference": "255ae3b0a488d78fbb34da23d3e0c059874b5948", + "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/37f660fa3bcd78fe4893ce23ebe934618ec099be", + "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be", "shasum": "" }, "require": { @@ -2917,7 +3248,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v5.4.10" + "source": "https://github.com/symfony/http-kernel/tree/v5.4.12" }, "funding": [ { @@ -2933,20 +3264,20 @@ "type": "tidelift" } ], - "time": "2022-06-26T16:57:59+00:00" + "time": "2022-08-26T14:40:40+00:00" }, { "name": "symfony/mime", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "02265e1e5111c3cd7480387af25e82378b7ab9cc" + "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/mime/zipball/02265e1e5111c3cd7480387af25e82378b7ab9cc", - "reference": "02265e1e5111c3cd7480387af25e82378b7ab9cc", + "url": "https://github.com/gitapi/repos/symfony/mime/zipball/03876e9c5a36f5b45e7d9a381edda5421eff8a90", + "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90", "shasum": "" }, "require": { @@ -3000,7 +3331,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.10" + "source": "https://github.com/symfony/mime/tree/v5.4.12" }, "funding": [ { @@ -3016,7 +3347,7 @@ "type": "tidelift" } ], - "time": "2022-06-09T12:22:40+00:00" + "time": "2022-08-19T14:24:03+00:00" }, { "name": "symfony/polyfill-ctype", @@ -3837,16 +4168,16 @@ }, { "name": "symfony/process", - "version": "v5.4.8", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3" + "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/process/zipball/597f3fff8e3e91836bb0bd38f5718b56ddbde2f3", - "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3", + "url": "https://github.com/gitapi/repos/symfony/process/zipball/6e75fe6874cbc7e4773d049616ab450eff537bf1", + "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1", "shasum": "" }, "require": { @@ -3879,7 +4210,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.8" + "source": "https://github.com/symfony/process/tree/v5.4.11" }, "funding": [ { @@ -3895,20 +4226,20 @@ "type": "tidelift" } ], - "time": "2022-04-08T05:07:18+00:00" + "time": "2022-06-27T16:58:25+00:00" }, { "name": "symfony/routing", - "version": "v5.4.8", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "e07817bb6244ea33ef5ad31abc4a9288bef3f2f7" + "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/routing/zipball/e07817bb6244ea33ef5ad31abc4a9288bef3f2f7", - "reference": "e07817bb6244ea33ef5ad31abc4a9288bef3f2f7", + "url": "https://github.com/gitapi/repos/symfony/routing/zipball/3e01ccd9b2a3a4167ba2b3c53612762300300226", + "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226", "shasum": "" }, "require": { @@ -3969,7 +4300,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v5.4.8" + "source": "https://github.com/symfony/routing/tree/v5.4.11" }, "funding": [ { @@ -3985,7 +4316,7 @@ "type": "tidelift" } ], - "time": "2022-04-18T21:45:37+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/service-contracts", @@ -4072,16 +4403,16 @@ }, { "name": "symfony/string", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "4432bc7df82a554b3e413a8570ce2fea90e94097" + "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/string/zipball/4432bc7df82a554b3e413a8570ce2fea90e94097", - "reference": "4432bc7df82a554b3e413a8570ce2fea90e94097", + "url": "https://github.com/gitapi/repos/symfony/string/zipball/2fc515e512d721bf31ea76bd02fe23ada4640058", + "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058", "shasum": "" }, "require": { @@ -4138,7 +4469,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.10" + "source": "https://github.com/symfony/string/tree/v5.4.12" }, "funding": [ { @@ -4154,20 +4485,20 @@ "type": "tidelift" } ], - "time": "2022-06-26T15:57:47+00:00" + "time": "2022-08-12T17:03:11+00:00" }, { "name": "symfony/translation", - "version": "v5.4.9", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "1639abc1177d26bcd4320e535e664cef067ab0ca" + "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/translation/zipball/1639abc1177d26bcd4320e535e664cef067ab0ca", - "reference": "1639abc1177d26bcd4320e535e664cef067ab0ca", + "url": "https://github.com/gitapi/repos/symfony/translation/zipball/42ecc77eb4f229ce2df702a648ec93b8478d76ae", + "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae", "shasum": "" }, "require": { @@ -4235,7 +4566,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.9" + "source": "https://github.com/symfony/translation/tree/v5.4.12" }, "funding": [ { @@ -4251,7 +4582,7 @@ "type": "tidelift" } ], - "time": "2022-05-06T12:33:37+00:00" + "time": "2022-08-02T15:52:22+00:00" }, { "name": "symfony/translation-contracts", @@ -4333,16 +4664,16 @@ }, { "name": "symfony/var-dumper", - "version": "v5.4.9", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "af52239a330fafd192c773795520dc2dd62b5657" + "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/af52239a330fafd192c773795520dc2dd62b5657", - "reference": "af52239a330fafd192c773795520dc2dd62b5657", + "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/b8f306d7b8ef34fb3db3305be97ba8e088fb4861", + "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861", "shasum": "" }, "require": { @@ -4402,7 +4733,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.4.9" + "source": "https://github.com/symfony/var-dumper/tree/v5.4.11" }, "funding": [ { @@ -4418,20 +4749,20 @@ "type": "tidelift" } ], - "time": "2022-05-21T10:24:18+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.4", + "version": "2.2.5", "source": { "type": "git", "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c" + "reference": "4348a3a06651827a27d989ad1d13efec6bb49b19" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/tijsverkoyen/CssToInlineStyles/zipball/da444caae6aca7a19c0c140f68c6182e337d5b1c", - "reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c", + "url": "https://github.com/gitapi/repos/tijsverkoyen/CssToInlineStyles/zipball/4348a3a06651827a27d989ad1d13efec6bb49b19", + "reference": "4348a3a06651827a27d989ad1d13efec6bb49b19", "shasum": "" }, "require": { @@ -4469,9 +4800,9 @@ "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", "support": { "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", - "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.4" + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.5" }, - "time": "2021-12-08T09:12:39+00:00" + "time": "2022-09-12T13:28:28+00:00" }, { "name": "vlucas/phpdotenv", @@ -5001,28 +5332,29 @@ }, { "name": "amphp/parallel-functions", - "version": "v1.0.0", + "version": "v1.1.0", "source": { "type": "git", "url": "https://github.com/amphp/parallel-functions.git", - "reference": "af9795d51abfafc3676cbe7e17965479491abaad" + "reference": "04e92fcacfc921a56dfe12c23b3265e62593a7cb" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/amphp/parallel-functions/zipball/af9795d51abfafc3676cbe7e17965479491abaad", - "reference": "af9795d51abfafc3676cbe7e17965479491abaad", + "url": "https://github.com/gitapi/repos/amphp/parallel-functions/zipball/04e92fcacfc921a56dfe12c23b3265e62593a7cb", + "reference": "04e92fcacfc921a56dfe12c23b3265e62593a7cb", "shasum": "" }, "require": { "amphp/amp": "^2.0.3", - "amphp/parallel": "^1.1", - "opis/closure": "^3.0.7", - "php": ">=7" + "amphp/parallel": "^1.4", + "amphp/serialization": "^1.0", + "laravel/serializable-closure": "^1.0", + "php": ">=7.4" }, "require-dev": { - "amphp/phpunit-util": "^1.0", - "friendsofphp/php-cs-fixer": "^2.9", - "phpunit/phpunit": "^6.5" + "amphp/php-cs-fixer-config": "v2.x-dev", + "amphp/phpunit-util": "^2.0", + "phpunit/phpunit": "^9.5.11" }, "type": "library", "autoload": { @@ -5046,7 +5378,7 @@ "description": "Parallel processing made simple.", "support": { "issues": "https://github.com/amphp/parallel-functions/issues", - "source": "https://github.com/amphp/parallel-functions/tree/master" + "source": "https://github.com/amphp/parallel-functions/tree/v1.1.0" }, "funding": [ { @@ -5054,7 +5386,7 @@ "type": "github" } ], - "time": "2020-07-10T17:05:35+00:00" + "time": "2022-02-03T19:32:41+00:00" }, { "name": "amphp/parser", @@ -5113,16 +5445,16 @@ }, { "name": "amphp/process", - "version": "v1.1.3", + "version": "v1.1.4", "source": { "type": "git", "url": "https://github.com/amphp/process.git", - "reference": "f09e3ed3b0a953ccbfff1140f12be4a884f0aa83" + "reference": "76e9495fd6818b43a20167cb11d8a67f7744ee0f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/amphp/process/zipball/f09e3ed3b0a953ccbfff1140f12be4a884f0aa83", - "reference": "f09e3ed3b0a953ccbfff1140f12be4a884f0aa83", + "url": "https://github.com/gitapi/repos/amphp/process/zipball/76e9495fd6818b43a20167cb11d8a67f7744ee0f", + "reference": "76e9495fd6818b43a20167cb11d8a67f7744ee0f", "shasum": "" }, "require": { @@ -5166,7 +5498,7 @@ "homepage": "https://github.com/amphp/process", "support": { "issues": "https://github.com/amphp/process/issues", - "source": "https://github.com/amphp/process/tree/v1.1.3" + "source": "https://github.com/amphp/process/tree/v1.1.4" }, "funding": [ { @@ -5174,7 +5506,7 @@ "type": "github" } ], - "time": "2021-12-17T19:09:33+00:00" + "time": "2022-07-06T23:50:12+00:00" }, { "name": "amphp/serialization", @@ -5377,20 +5709,20 @@ }, { "name": "composer/pcre", - "version": "2.0.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "c8e9d27cfc5ed22643c19c160455b473ffd8aabe" + "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/composer/pcre/zipball/c8e9d27cfc5ed22643c19c160455b473ffd8aabe", - "reference": "c8e9d27cfc5ed22643c19c160455b473ffd8aabe", + "url": "https://github.com/gitapi/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0" + "php": "^7.4 || ^8.0" }, "require-dev": { "phpstan/phpstan": "^1.3", @@ -5400,7 +5732,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.x-dev" + "dev-main": "3.x-dev" } }, "autoload": { @@ -5428,7 +5760,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/2.0.0" + "source": "https://github.com/composer/pcre/tree/3.0.0" }, "funding": [ { @@ -5444,7 +5776,7 @@ "type": "tidelift" } ], - "time": "2022-02-25T20:05:29+00:00" + "time": "2022-02-25T20:21:48+00:00" }, { "name": "composer/semver", @@ -5752,26 +6084,27 @@ }, { "name": "doctrine/collections", - "version": "1.6.8", + "version": "1.7.3", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "1958a744696c6bb3bb0d28db2611dc11610e78af" + "reference": "09dde3eb237756190f2de738d3c97cff10a8407b" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/1958a744696c6bb3bb0d28db2611dc11610e78af", - "reference": "1958a744696c6bb3bb0d28db2611dc11610e78af", + "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/09dde3eb237756190f2de738d3c97cff10a8407b", + "reference": "09dde3eb237756190f2de738d3c97cff10a8407b", "shasum": "" }, "require": { + "doctrine/deprecations": "^0.5.3 || ^1", "php": "^7.1.3 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9.0", - "phpstan/phpstan": "^0.12", + "doctrine/coding-standard": "^9.0 || ^10.0", + "phpstan/phpstan": "^1.4.8", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.1.5", - "vimeo/psalm": "^4.2.1" + "vimeo/psalm": "^4.22" }, "type": "library", "autoload": { @@ -5815,9 +6148,52 @@ ], "support": { "issues": "https://github.com/doctrine/collections/issues", - "source": "https://github.com/doctrine/collections/tree/1.6.8" + "source": "https://github.com/doctrine/collections/tree/1.7.3" + }, + "time": "2022-09-01T19:34:23+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "v1.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", + "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9", + "phpunit/phpunit": "^7.5|^8.5|^9.5", + "psr/log": "^1|^2|^3" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + } }, - "time": "2021-08-10T18:51:53+00:00" + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/v1.0.0" + }, + "time": "2022-05-02T15:47:09+00:00" }, { "name": "doctrine/instantiator", @@ -5891,16 +6267,16 @@ }, { "name": "fakerphp/faker", - "version": "v1.19.0", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75" + "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/d7f08a622b3346766325488aa32ddc93ccdecc75", - "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75", + "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/37f751c67a5372d4e26353bd9384bc03744ec77b", + "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b", "shasum": "" }, "require": { @@ -5927,7 +6303,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v1.19-dev" + "dev-main": "v1.20-dev" } }, "autoload": { @@ -5952,9 +6328,9 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.19.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.20.0" }, - "time": "2022-02-02T17:38:57+00:00" + "time": "2022-07-20T13:12:54+00:00" }, { "name": "felixfbecker/advanced-json-rpc", @@ -6059,16 +6435,16 @@ }, { "name": "gitonomy/gitlib", - "version": "v1.3.5", + "version": "v1.3.6", "source": { "type": "git", "url": "https://github.com/gitonomy/gitlib.git", - "reference": "793ffe5826c30e64ea499ea9e4bb353dd0892bef" + "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/793ffe5826c30e64ea499ea9e4bb353dd0892bef", - "reference": "793ffe5826c30e64ea499ea9e4bb353dd0892bef", + "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/33ae0a2e469accc19d1a06bed63ed93dbf368ae2", + "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2", "shasum": "" }, "require": { @@ -6121,7 +6497,7 @@ "description": "Library for accessing git", "support": { "issues": "https://github.com/gitonomy/gitlib/issues", - "source": "https://github.com/gitonomy/gitlib/tree/v1.3.5" + "source": "https://github.com/gitonomy/gitlib/tree/v1.3.6" }, "funding": [ { @@ -6129,7 +6505,7 @@ "type": "tidelift" } ], - "time": "2022-03-01T10:56:00+00:00" + "time": "2022-08-05T09:17:13+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -6184,23 +6560,23 @@ }, { "name": "kwn/php-rdkafka-stubs", - "version": "1.1.1", + "version": "v2.2.1", "source": { "type": "git", "url": "https://github.com/kwn/php-rdkafka-stubs.git", - "reference": "7084dd5973d5ef72b5312edae41553ded3d38bb3" + "reference": "23b865d6b3e8fe1f080aa7371dc1da3339361996" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/kwn/php-rdkafka-stubs/zipball/7084dd5973d5ef72b5312edae41553ded3d38bb3", - "reference": "7084dd5973d5ef72b5312edae41553ded3d38bb3", + "url": "https://github.com/gitapi/repos/kwn/php-rdkafka-stubs/zipball/23b865d6b3e8fe1f080aa7371dc1da3339361996", + "reference": "23b865d6b3e8fe1f080aa7371dc1da3339361996", "shasum": "" }, "require": { - "ext-rdkafka": "*" + "ext-rdkafka": ">=4.0" }, "require-dev": { - "phpunit/phpunit": "^4.8" + "phpunit/phpunit": "^8.2.4" }, "type": "library", "notification-url": "https://packagist.org/downloads/", @@ -6216,9 +6592,9 @@ "description": "Rdkafka extension stubs for your IDE", "support": { "issues": "https://github.com/kwn/php-rdkafka-stubs/issues", - "source": "https://github.com/kwn/php-rdkafka-stubs/tree/master" + "source": "https://github.com/kwn/php-rdkafka-stubs/tree/v2.2.1" }, - "time": "2018-03-13T19:02:21+00:00" + "time": "2022-08-16T15:27:51+00:00" }, { "name": "leroy-merlin-br/coding-standard", @@ -6273,16 +6649,16 @@ }, { "name": "mockery/mockery", - "version": "1.5.0", + "version": "1.5.1", "source": { "type": "git", "url": "https://github.com/mockery/mockery.git", - "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac" + "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/mockery/mockery/zipball/c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", - "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", + "url": "https://github.com/gitapi/repos/mockery/mockery/zipball/e92dcc83d5a51851baf5f5591d32cb2b16e3684e", + "reference": "e92dcc83d5a51851baf5f5591d32cb2b16e3684e", "shasum": "" }, "require": { @@ -6339,9 +6715,9 @@ ], "support": { "issues": "https://github.com/mockery/mockery/issues", - "source": "https://github.com/mockery/mockery/tree/1.5.0" + "source": "https://github.com/mockery/mockery/tree/1.5.1" }, - "time": "2022-01-20T13:18:17+00:00" + "time": "2022-09-07T15:32:08+00:00" }, { "name": "myclabs/deep-copy", @@ -6455,16 +6831,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.14.0", + "version": "v4.15.1", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "34bea19b6e03d8153165d8f30bba4c3be86184c1" + "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/34bea19b6e03d8153165d8f30bba4c3be86184c1", - "reference": "34bea19b6e03d8153165d8f30bba4c3be86184c1", + "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", + "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", "shasum": "" }, "require": { @@ -6505,9 +6881,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.14.0" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.1" }, - "time": "2022-05-31T20:59:12+00:00" + "time": "2022-09-04T07:30:47+00:00" }, { "name": "ondram/ci-detector", @@ -6642,22 +7018,22 @@ }, { "name": "orchestra/testbench", - "version": "v6.24.1", + "version": "v6.25.0", "source": { "type": "git", "url": "https://github.com/orchestral/testbench.git", - "reference": "7b6a225851f6c148a80e241af5cbd833c83e572c" + "reference": "a65b90b78caed1fdface168ca02af34f3422e513" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/7b6a225851f6c148a80e241af5cbd833c83e572c", - "reference": "7b6a225851f6c148a80e241af5cbd833c83e572c", + "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/a65b90b78caed1fdface168ca02af34f3422e513", + "reference": "a65b90b78caed1fdface168ca02af34f3422e513", "shasum": "" }, "require": { "laravel/framework": "^8.75", "mockery/mockery": "^1.4.4", - "orchestra/testbench-core": "^6.28.1", + "orchestra/testbench-core": "^6.29", "php": "^7.3 || ^8.0", "phpunit/phpunit": "^8.5.21 || ^9.5.10", "spatie/laravel-ray": "^1.26.2" @@ -6691,7 +7067,7 @@ ], "support": { "issues": "https://github.com/orchestral/testbench/issues", - "source": "https://github.com/orchestral/testbench/tree/v6.24.1" + "source": "https://github.com/orchestral/testbench/tree/v6.25.0" }, "funding": [ { @@ -6703,20 +7079,20 @@ "type": "liberapay" } ], - "time": "2022-02-08T12:57:17+00:00" + "time": "2022-08-24T01:41:23+00:00" }, { "name": "orchestra/testbench-core", - "version": "v6.28.1", + "version": "v6.29.0", "source": { "type": "git", "url": "https://github.com/orchestral/testbench-core.git", - "reference": "e66074e825e21b40b3433703dc3f76f2bfebebe0" + "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/e66074e825e21b40b3433703dc3f76f2bfebebe0", - "reference": "e66074e825e21b40b3433703dc3f76f2bfebebe0", + "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/8eeace7d979a7905e6fab77a30a3b05da99459c4", + "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4", "shasum": "" }, "require": { @@ -6730,7 +7106,7 @@ "laravel/laravel": "8.x-dev", "mockery/mockery": "^1.4.4", "orchestra/canvas": "^6.1", - "phpunit/phpunit": "^8.5.21 || ^9.5.10 || ^10.0", + "phpunit/phpunit": "^8.5.21 || ^9.5.10", "spatie/laravel-ray": "^1.7.1", "symfony/process": "^5.0" }, @@ -6793,7 +7169,7 @@ "type": "liberapay" } ], - "time": "2022-02-08T12:50:35+00:00" + "time": "2022-08-24T00:15:20+00:00" }, { "name": "phar-io/manifest", @@ -7068,51 +7444,52 @@ }, { "name": "phpro/grumphp", - "version": "v1.5.1", + "version": "v1.13.0", "source": { "type": "git", "url": "https://github.com/phpro/grumphp.git", - "reference": "ef3d019f25f6852e61c3af7c8c234b1bf451a34c" + "reference": "3ec61c1678c4c370f02b05fef606fd561d923c8e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpro/grumphp/zipball/ef3d019f25f6852e61c3af7c8c234b1bf451a34c", - "reference": "ef3d019f25f6852e61c3af7c8c234b1bf451a34c", + "url": "https://github.com/gitapi/repos/phpro/grumphp/zipball/3ec61c1678c4c370f02b05fef606fd561d923c8e", + "reference": "3ec61c1678c4c370f02b05fef606fd561d923c8e", "shasum": "" }, "require": { - "amphp/amp": "^2.4", + "amphp/amp": "^2.6", "amphp/parallel": "^1.4", - "amphp/parallel-functions": "1.0", - "composer-plugin-api": "~1.0 || ~2.0", - "doctrine/collections": "^1.6.7", + "amphp/parallel-functions": "^1.1", + "composer-plugin-api": "~2.0", + "doctrine/collections": "^1.6.8", "ext-json": "*", - "gitonomy/gitlib": "^1.0.3", - "monolog/monolog": "~1.16 || ^2.0", - "ondram/ci-detector": "^3.5 || ^4.0", - "opis/closure": "^3.5", - "php": "^7.3 || ^8.0", - "psr/container": "^1.0", - "seld/jsonlint": "~1.1", - "symfony/config": "~4.4 || ~5.0", - "symfony/console": "~4.4 || ~5.0", - "symfony/dependency-injection": "~4.4 || ~5.0", - "symfony/dotenv": "~4.4 || ~5.0", - "symfony/event-dispatcher": "~4.4 || ~5.0", - "symfony/filesystem": "~4.4 || ~5.0", - "symfony/finder": "~4.4 || ~5.0", - "symfony/options-resolver": "~4.4 || ~5.0", - "symfony/process": "~4.4 || ~5.0", - "symfony/yaml": "~4.4 || ~5.0" + "gitonomy/gitlib": "^1.3", + "laravel/serializable-closure": "^1.1", + "monolog/monolog": "^2.0 || ^3.0", + "ondram/ci-detector": "^4.0", + "php": "^7.4 || ^8.0", + "psr/container": "^1.1 || ^2.0", + "seld/jsonlint": "~1.8", + "symfony/config": "~5.3 || ~6.0", + "symfony/console": "~5.3 || ~6.0", + "symfony/dependency-injection": "~5.3 || ~6.0", + "symfony/dotenv": "~5.3 || ~6.0", + "symfony/event-dispatcher": "~5.3 || ~6.0", + "symfony/filesystem": "~5.3 || ~6.0", + "symfony/finder": "~5.3 || ~6.0", + "symfony/options-resolver": "~5.3 || ~6.0", + "symfony/process": "~5.3 || ~6.0", + "symfony/yaml": "~5.3 || ~6.0" }, "require-dev": { - "brianium/paratest": "^6.3", - "composer/composer": "^1.10.22 || ^2.0.13", - "nikic/php-parser": "~4.0", + "amphp/sync": "^v1.4", + "brianium/paratest": "^6.4", + "composer/composer": "^2.2.6", + "nikic/php-parser": "~4.13", "php-parallel-lint/php-parallel-lint": "^1.3", - "phpspec/phpspec": "^7.1", + "phpspec/phpspec": "^7.2", "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^9.5.13" }, "suggest": { "atoum/atoum": "Lets GrumPHP run your unit tests.", @@ -7177,96 +7554,29 @@ "description": "A composer plugin that enables source code quality checks.", "support": { "issues": "https://github.com/phpro/grumphp/issues", - "source": "https://github.com/phpro/grumphp/tree/v1.5.1" - }, - "time": "2022-02-07T13:28:33+00:00" - }, - { - "name": "phpspec/prophecy", - "version": "v1.15.0", - "source": { - "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13" - }, - "dist": { - "type": "zip", - "url": "https://github.com/gitapi/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.2", - "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 || ^7.0", - "phpunit/phpunit": "^8.0 || ^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Prophecy\\": "src/Prophecy" - } + "source": "https://github.com/phpro/grumphp/tree/v1.13.0" }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" - }, - { - "name": "Marcello Duarte", - "email": "marcello.duarte@gmail.com" - } - ], - "description": "Highly opinionated mocking framework for PHP 5.3+", - "homepage": "https://github.com/phpspec/prophecy", - "keywords": [ - "Double", - "Dummy", - "fake", - "mock", - "spy", - "stub" - ], - "support": { - "issues": "https://github.com/phpspec/prophecy/issues", - "source": "https://github.com/phpspec/prophecy/tree/v1.15.0" - }, - "time": "2021-12-08T12:19:24+00:00" + "time": "2022-06-24T08:32:25+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.15", + "version": "9.2.17", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f" + "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/2e9da11878c4202f97915c1cb4bb1ca318a63f5f", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f", + "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/aa94dc41e8661fe90c7316849907cba3007b10d8", + "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.13.0", + "nikic/php-parser": "^4.14", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -7315,7 +7625,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.15" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.17" }, "funding": [ { @@ -7323,7 +7633,7 @@ "type": "github" } ], - "time": "2022-03-07T09:28:20+00:00" + "time": "2022-08-30T12:24:04+00:00" }, { "name": "phpunit/php-file-iterator", @@ -7568,16 +7878,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.21", + "version": "9.5.24", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "0e32b76be457de00e83213528f6bb37e2a38fcb1" + "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/0e32b76be457de00e83213528f6bb37e2a38fcb1", - "reference": "0e32b76be457de00e83213528f6bb37e2a38fcb1", + "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", + "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", "shasum": "" }, "require": { @@ -7592,7 +7902,6 @@ "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", "php": ">=7.3", - "phpspec/prophecy": "^1.12.1", "phpunit/php-code-coverage": "^9.2.13", "phpunit/php-file-iterator": "^3.0.5", "phpunit/php-invoker": "^3.1.1", @@ -7607,12 +7916,9 @@ "sebastian/global-state": "^5.0.1", "sebastian/object-enumerator": "^4.0.3", "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.0", + "sebastian/type": "^3.1", "sebastian/version": "^3.0.2" }, - "require-dev": { - "phpspec/prophecy-phpunit": "^2.0.1" - }, "suggest": { "ext-soap": "*", "ext-xdebug": "*" @@ -7654,7 +7960,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.21" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.24" }, "funding": [ { @@ -7666,7 +7972,7 @@ "type": "github" } ], - "time": "2022-06-19T12:14:25+00:00" + "time": "2022-08-30T07:42:16+00:00" }, { "name": "pimple/pimple", @@ -7944,16 +8250,16 @@ }, { "name": "sebastian/comparator", - "version": "4.0.6", + "version": "4.0.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382" + "reference": "fa0f136dd2334583309d32b62544682ee972b51a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382", + "url": "https://github.com/gitapi/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a", "shasum": "" }, "require": { @@ -8006,7 +8312,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" }, "funding": [ { @@ -8014,7 +8320,7 @@ "type": "github" } ], - "time": "2020-10-26T15:49:45+00:00" + "time": "2022-09-14T12:41:17+00:00" }, { "name": "sebastian/complexity", @@ -8204,16 +8510,16 @@ }, { "name": "sebastian/exporter", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", + "url": "https://github.com/gitapi/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", "shasum": "" }, "require": { @@ -8269,7 +8575,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5" }, "funding": [ { @@ -8277,7 +8583,7 @@ "type": "github" } ], - "time": "2021-11-11T14:18:36+00:00" + "time": "2022-09-14T06:03:37+00:00" }, { "name": "sebastian/global-state", @@ -8632,16 +8938,16 @@ }, { "name": "sebastian/type", - "version": "3.0.0", + "version": "3.2.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad" + "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/type/zipball/b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", + "url": "https://github.com/gitapi/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", "shasum": "" }, "require": { @@ -8653,7 +8959,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "3.2-dev" } }, "autoload": { @@ -8676,7 +8982,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.0.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.2.0" }, "funding": [ { @@ -8684,7 +8990,7 @@ "type": "github" } ], - "time": "2022-03-15T09:54:48+00:00" + "time": "2022-09-12T14:47:03+00:00" }, { "name": "sebastian/version", @@ -8910,16 +9216,16 @@ }, { "name": "spatie/laravel-ray", - "version": "1.29.7", + "version": "1.30.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-ray.git", - "reference": "97b8ccdb9975e3339069765417990e89474254ee" + "reference": "1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/spatie/laravel-ray/zipball/97b8ccdb9975e3339069765417990e89474254ee", - "reference": "97b8ccdb9975e3339069765417990e89474254ee", + "url": "https://github.com/gitapi/repos/spatie/laravel-ray/zipball/1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6", + "reference": "1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6", "shasum": "" }, "require": { @@ -8978,7 +9284,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-ray/issues", - "source": "https://github.com/spatie/laravel-ray/tree/1.29.7" + "source": "https://github.com/spatie/laravel-ray/tree/1.30.0" }, "funding": [ { @@ -8990,7 +9296,7 @@ "type": "other" } ], - "time": "2022-05-27T18:45:58+00:00" + "time": "2022-07-29T10:02:43+00:00" }, { "name": "spatie/macroable", @@ -9044,16 +9350,16 @@ }, { "name": "spatie/ray", - "version": "1.34.5", + "version": "1.36.0", "source": { "type": "git", "url": "https://github.com/spatie/ray.git", - "reference": "2d64ea264eecbdc7ec01e4e8b45978cae80815d2" + "reference": "4a4def8cda4806218341b8204c98375aa8c34323" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/spatie/ray/zipball/2d64ea264eecbdc7ec01e4e8b45978cae80815d2", - "reference": "2d64ea264eecbdc7ec01e4e8b45978cae80815d2", + "url": "https://github.com/gitapi/repos/spatie/ray/zipball/4a4def8cda4806218341b8204c98375aa8c34323", + "reference": "4a4def8cda4806218341b8204c98375aa8c34323", "shasum": "" }, "require": { @@ -9103,7 +9409,7 @@ ], "support": { "issues": "https://github.com/spatie/ray/issues", - "source": "https://github.com/spatie/ray/tree/1.34.5" + "source": "https://github.com/spatie/ray/tree/1.36.0" }, "funding": [ { @@ -9115,7 +9421,7 @@ "type": "other" } ], - "time": "2022-06-03T12:32:57+00:00" + "time": "2022-08-11T14:04:18+00:00" }, { "name": "squizlabs/php_codesniffer", @@ -9175,16 +9481,16 @@ }, { "name": "symfony/config", - "version": "v5.4.9", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "8f551fe22672ac7ab2c95fe46d899f960ed4d979" + "reference": "ec79e03125c1d2477e43dde8528535d90cc78379" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/config/zipball/8f551fe22672ac7ab2c95fe46d899f960ed4d979", - "reference": "8f551fe22672ac7ab2c95fe46d899f960ed4d979", + "url": "https://github.com/gitapi/repos/symfony/config/zipball/ec79e03125c1d2477e43dde8528535d90cc78379", + "reference": "ec79e03125c1d2477e43dde8528535d90cc78379", "shasum": "" }, "require": { @@ -9234,7 +9540,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v5.4.9" + "source": "https://github.com/symfony/config/tree/v5.4.11" }, "funding": [ { @@ -9250,20 +9556,20 @@ "type": "tidelift" } ], - "time": "2022-05-17T10:39:36+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/dependency-injection", - "version": "v5.4.10", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "88d1c0d38c2e60f757fa11d89cfc885f0b7f5171" + "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/88d1c0d38c2e60f757fa11d89cfc885f0b7f5171", - "reference": "88d1c0d38c2e60f757fa11d89cfc885f0b7f5171", + "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a8b9251016e9476db73e25fa836904bc0bf74c62", + "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62", "shasum": "" }, "require": { @@ -9323,7 +9629,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v5.4.10" + "source": "https://github.com/symfony/dependency-injection/tree/v5.4.11" }, "funding": [ { @@ -9339,7 +9645,7 @@ "type": "tidelift" } ], - "time": "2022-06-26T13:00:04+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/dotenv", @@ -9414,16 +9720,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.9", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "36a017fa4cce1eff1b8e8129ff53513abcef05ba" + "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/36a017fa4cce1eff1b8e8129ff53513abcef05ba", - "reference": "36a017fa4cce1eff1b8e8129ff53513abcef05ba", + "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/2d67c1f9a1937406a9be3171b4b22250c0a11447", + "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447", "shasum": "" }, "require": { @@ -9458,7 +9764,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.9" + "source": "https://github.com/symfony/filesystem/tree/v5.4.12" }, "funding": [ { @@ -9474,20 +9780,20 @@ "type": "tidelift" } ], - "time": "2022-05-20T13:55:35+00:00" + "time": "2022-08-02T13:48:16+00:00" }, { "name": "symfony/options-resolver", - "version": "v5.4.3", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8" + "reference": "54f14e36aa73cb8f7261d7686691fd4d75ea2690" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/options-resolver/zipball/cc1147cb11af1b43f503ac18f31aa3bec213aba8", - "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8", + "url": "https://github.com/gitapi/repos/symfony/options-resolver/zipball/54f14e36aa73cb8f7261d7686691fd4d75ea2690", + "reference": "54f14e36aa73cb8f7261d7686691fd4d75ea2690", "shasum": "" }, "require": { @@ -9527,7 +9833,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.4.3" + "source": "https://github.com/symfony/options-resolver/tree/v5.4.11" }, "funding": [ { @@ -9543,7 +9849,7 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/stopwatch", @@ -9609,16 +9915,16 @@ }, { "name": "symfony/yaml", - "version": "v5.4.10", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "04e42926429d9e8b39c174387ab990bf7817f7a2" + "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/04e42926429d9e8b39c174387ab990bf7817f7a2", - "reference": "04e42926429d9e8b39c174387ab990bf7817f7a2", + "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", + "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", "shasum": "" }, "require": { @@ -9664,7 +9970,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.10" + "source": "https://github.com/symfony/yaml/tree/v5.4.12" }, "funding": [ { @@ -9680,7 +9986,7 @@ "type": "tidelift" } ], - "time": "2022-06-20T11:50:59+00:00" + "time": "2022-08-02T15:52:22+00:00" }, { "name": "theseer/tokenizer", @@ -9734,16 +10040,16 @@ }, { "name": "vimeo/psalm", - "version": "4.24.0", + "version": "4.27.0", "source": { "type": "git", "url": "https://github.com/vimeo/psalm.git", - "reference": "06dd975cb55d36af80f242561738f16c5f58264f" + "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/06dd975cb55d36af80f242561738f16c5f58264f", - "reference": "06dd975cb55d36af80f242561738f16c5f58264f", + "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/faf106e717c37b8c81721845dba9de3d8deed8ff", + "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff", "shasum": "" }, "require": { @@ -9835,9 +10141,9 @@ ], "support": { "issues": "https://github.com/vimeo/psalm/issues", - "source": "https://github.com/vimeo/psalm/tree/4.24.0" + "source": "https://github.com/vimeo/psalm/tree/4.27.0" }, - "time": "2022-06-26T11:47:54+00:00" + "time": "2022-08-31T13:47:09+00:00" }, { "name": "webmozart/path-util", @@ -9892,16 +10198,16 @@ }, { "name": "zbateson/mail-mime-parser", - "version": "2.2.1", + "version": "2.2.2", "source": { "type": "git", "url": "https://github.com/zbateson/mail-mime-parser.git", - "reference": "24955de7ec352b3258c1d4551efd21202cb8710c" + "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/24955de7ec352b3258c1d4551efd21202cb8710c", - "reference": "24955de7ec352b3258c1d4551efd21202cb8710c", + "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/318cd809afebe48e8fb41625b05b25470fb3fa86", + "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86", "shasum": "" }, "require": { @@ -9961,7 +10267,7 @@ "type": "github" } ], - "time": "2022-02-22T21:35:59+00:00" + "time": "2022-09-01T15:59:13+00:00" }, { "name": "zbateson/mb-wrapper", @@ -10032,16 +10338,16 @@ }, { "name": "zbateson/stream-decorators", - "version": "1.0.6", + "version": "1.0.7", "source": { "type": "git", "url": "https://github.com/zbateson/stream-decorators.git", - "reference": "3403c4323bd1cd15fe54348b031b26b064c706af" + "reference": "8f8ca208572963258b7e6d91106181706deacd10" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/stream-decorators/zipball/3403c4323bd1cd15fe54348b031b26b064c706af", - "reference": "3403c4323bd1cd15fe54348b031b26b064c706af", + "url": "https://github.com/gitapi/repos/zbateson/stream-decorators/zipball/8f8ca208572963258b7e6d91106181706deacd10", + "reference": "8f8ca208572963258b7e6d91106181706deacd10", "shasum": "" }, "require": { @@ -10081,7 +10387,7 @@ ], "support": { "issues": "https://github.com/zbateson/stream-decorators/issues", - "source": "https://github.com/zbateson/stream-decorators/tree/1.0.6" + "source": "https://github.com/zbateson/stream-decorators/tree/1.0.7" }, "funding": [ { @@ -10089,7 +10395,7 @@ "type": "github" } ], - "time": "2021-07-08T19:01:59+00:00" + "time": "2022-09-08T15:44:55+00:00" } ], "aliases": [], @@ -10098,9 +10404,9 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "ext-rdkafka": "*", + "ext-rdkafka": ">=4.0", "ext-json": "*", - "php": ">=7.1" + "php": ">=7.4" }, "platform-dev": [], "plugin-api-version": "2.0.0" diff --git a/docker/Dockerfile b/docker/Dockerfile index 4185716c..8ec727b4 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,4 +1,4 @@ -FROM leroymerlinbr/php:7.3 +FROM leroymerlinbr/php:7.4 LABEL maintainer="boitata@leroymerlin.com.br" USER root:root diff --git a/grumphp.yml b/grumphp.yml index 880affc2..f4d4df5d 100644 --- a/grumphp.yml +++ b/grumphp.yml @@ -11,6 +11,7 @@ grumphp: standard: [ phpcs.xml ] psalm: config: psalm.xml + ignore_patterns: [ 'tests' ] threads: 4 git_commit_message: enforce_capitalized_subject: false diff --git a/src/Producer/Poll.php b/src/Producer/Poll.php index 0f65815e..6f770363 100644 --- a/src/Producer/Poll.php +++ b/src/Producer/Poll.php @@ -75,7 +75,7 @@ public function flushMessage(): void } for ($flushAttempts = 0; $flushAttempts < $this->maxFlushAttempts; $flushAttempts++) { - if (0 === $this->producer->poll($this->timeout)) { + if (0 === $this->producer->flush($this->timeout)) { return; } diff --git a/tests/Integration/ProducerTest.php b/tests/Integration/ProducerTest.php index d642b21b..a0bd7b5a 100644 --- a/tests/Integration/ProducerTest.php +++ b/tests/Integration/ProducerTest.php @@ -35,6 +35,7 @@ public function testShouldRunAProducerAndReceiveMessagesWithAHighLevelConsumer() { // Given That I $this->haveAConsumerHandlerConfigured(); + $this->haveNoPartitionConfigured(); $this->haveSomeRandomMessagesProduced(); // I Expect That @@ -180,4 +181,9 @@ private function haveFourProducedMessages(): void $this->produceRecordMessage($this->firstLowLevelMessage); $this->produceRecordMessage($this->secondLowLevelMessage); } + + private function haveNoPartitionConfigured(): void + { + config(['kafka.topics.default.consumer.consumer_groups.test-consumer-group.partition' => -1]); + } } diff --git a/tests/Integration/ProducerWithAvroTest.php b/tests/Integration/ProducerWithAvroTest.php index 0e7a0c7c..5a1aa06c 100644 --- a/tests/Integration/ProducerWithAvroTest.php +++ b/tests/Integration/ProducerWithAvroTest.php @@ -21,6 +21,7 @@ public function testShouldRunAProducerMessagesWithAAvroSchema(): void // When I $this->haveSomeRandomMessagesProduced(); + $this->expectNotToPerformAssertions(); } protected function haveAHandlerConfigured(): void diff --git a/tests/Unit/Connectors/Consumer/FactoryTest.php b/tests/Unit/Connectors/Consumer/FactoryTest.php index 8080d39d..2f96f3c6 100644 --- a/tests/Unit/Connectors/Consumer/FactoryTest.php +++ b/tests/Unit/Connectors/Consumer/FactoryTest.php @@ -18,7 +18,7 @@ protected function setUp(): void 'kafka' => [ 'brokers' => [ 'default' => [ - 'connections' => 'kafka:123', + 'connections' => 'kafka:9092', ], ], 'topics' => [ diff --git a/tests/Unit/Connectors/Consumer/HighLevelTest.php b/tests/Unit/Connectors/Consumer/HighLevelTest.php index 1afca75f..b4f40987 100644 --- a/tests/Unit/Connectors/Consumer/HighLevelTest.php +++ b/tests/Unit/Connectors/Consumer/HighLevelTest.php @@ -13,7 +13,7 @@ public function testItShouldMakeConnectorSetup(): void // Set $configManager = new ConsumerConfigManager(); $configManager->set([ - 'connections' => 'kafka:123', + 'connections' => 'kafka:9092', 'consumer_group' => 'some-group', 'topic_id' => 'some_topic', 'offset_reset' => 'earliest', diff --git a/tests/Unit/Connectors/Consumer/LowLevelTest.php b/tests/Unit/Connectors/Consumer/LowLevelTest.php index 93394fce..e3e00a0c 100644 --- a/tests/Unit/Connectors/Consumer/LowLevelTest.php +++ b/tests/Unit/Connectors/Consumer/LowLevelTest.php @@ -13,7 +13,7 @@ public function testItShouldMakeConnectorSetup(): void // Set $configManager = new ConsumerConfigManager(); $configManager->set([ - 'connections' => 'kafka:123', + 'connections' => 'kafka:9092', 'consumer_group' => 'some-group', 'topic' => 'some_topic', 'offset_reset' => 'earliest', diff --git a/tests/Unit/Console/ConsumerCommandTest.php b/tests/Unit/Console/ConsumerCommandTest.php index 566237fa..7da7ecee 100644 --- a/tests/Unit/Console/ConsumerCommandTest.php +++ b/tests/Unit/Console/ConsumerCommandTest.php @@ -17,7 +17,7 @@ protected function setUp(): void 'kafka' => [ 'brokers' => [ 'default' => [ - 'connections' => 'test_kafka:6680', + 'connections' => 'kafka:9092', 'auth' => [], ], ], diff --git a/tests/Unit/Producer/PollTest.php b/tests/Unit/Producer/PollTest.php index b2b72a90..c6b41336 100644 --- a/tests/Unit/Producer/PollTest.php +++ b/tests/Unit/Producer/PollTest.php @@ -26,7 +26,7 @@ public function testItShouldHandleMessageWithoutAcknowledgment(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations - $kafkaProducer->shouldReceive('poll') + $kafkaProducer->shouldReceive('flush') ->never(); // Actions @@ -52,7 +52,7 @@ public function testShouldThrowExceptionWhenFlushFailed(): void // Expectations $kafkaProducer->expects() - ->poll(4000) + ->flush(4000) ->times(10) ->andReturn(1); @@ -80,7 +80,7 @@ public function testItShouldHandleResponseEveryTimeWhenAsyncModeIsTrue(): void // Expectations $kafkaProducer->expects() - ->poll(4000) + ->flush(4000) ->times(3) ->andReturn(0); diff --git a/tests/Unit/ProducerTest.php b/tests/Unit/ProducerTest.php index bdf9806b..df3460d8 100644 --- a/tests/Unit/ProducerTest.php +++ b/tests/Unit/ProducerTest.php @@ -127,10 +127,7 @@ public function testItShouldProduceRecordAsStringThroughMiddlewareQueue(): void ->withAnyArgs(); // Actions - $result = $producer->produce($producerHandler); - - // Assertions - $this->assertNull($result); + $producer->produce($producerHandler); } public function testItShouldThrowJsonExceptionWhenPassingMalFormattedArray(): void @@ -198,7 +195,7 @@ public function testItShouldThrowJsonExceptionWhenPassingMalFormattedArray(): vo ->andReturn($producerTopic); $kafkaProducer->expects() - ->poll(1000) + ->flush(1000) ->andReturn(0); $producerMiddleware->expects() @@ -274,7 +271,7 @@ public function testShouldBuildDispatcher(): void ->andReturn($producerTopic); $kafkaProducer->expects() - ->poll(1000) + ->flush(1000) ->andReturn(0); // Actions @@ -348,7 +345,7 @@ public function testShouldBuildDispatcherWithConfigOptions(): void ->andReturn($producerTopic); $kafkaProducer->expects() - ->poll(1000) + ->flush(1000) ->andReturn(0); // Actions From 32f371fcd0d3c312606c6634c175816544b30706 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Mon, 19 Dec 2022 14:41:22 -0300 Subject: [PATCH 11/28] chore(poll): add poll calling after each produced message --- src/Producer/Poll.php | 5 ++++- tests/Unit/Producer/PollTest.php | 18 ++++++++++++++---- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/src/Producer/Poll.php b/src/Producer/Poll.php index 6f770363..03925d5b 100644 --- a/src/Producer/Poll.php +++ b/src/Producer/Poll.php @@ -7,6 +7,8 @@ class Poll { + const NON_BLOCKING_POLL = 0; + /** * @var int */ @@ -55,6 +57,7 @@ public function __construct(Producer $producer, AbstractConfigManager $configMan public function handleResponse(): void { + $this->producer->poll(self::NON_BLOCKING_POLL); $this->processedMessagesCount++; if (!$this->isAsync) { @@ -75,7 +78,7 @@ public function flushMessage(): void } for ($flushAttempts = 0; $flushAttempts < $this->maxFlushAttempts; $flushAttempts++) { - if (0 === $this->producer->flush($this->timeout)) { + if (RD_KAFKA_RESP_ERR_NO_ERROR === $this->producer->flush($this->timeout)) { return; } diff --git a/tests/Unit/Producer/PollTest.php b/tests/Unit/Producer/PollTest.php index c6b41336..766f0d97 100644 --- a/tests/Unit/Producer/PollTest.php +++ b/tests/Unit/Producer/PollTest.php @@ -26,6 +26,9 @@ public function testItShouldHandleMessageWithoutAcknowledgment(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations + $kafkaProducer->expects() + ->poll(0); + $kafkaProducer->shouldReceive('flush') ->never(); @@ -39,10 +42,10 @@ public function testShouldThrowExceptionWhenFlushFailed(): void $configManager = new ProducerConfigManager(); $configManager->set([ 'topic_id' => 'topic_name', - 'timeout' => 4000, + 'timeout' => 1000, 'is_async' => false, 'max_poll_records' => 500, - 'flush_attempts' => 10, + 'flush_attempts' => 3, 'required_acknowledgment' => true, 'partition' => 0, ]); @@ -52,8 +55,11 @@ public function testShouldThrowExceptionWhenFlushFailed(): void // Expectations $kafkaProducer->expects() - ->flush(4000) - ->times(10) + ->poll(0); + + $kafkaProducer->expects() + ->flush(1000) + ->times(3) ->andReturn(1); $this->expectException(RuntimeException::class); @@ -79,6 +85,10 @@ public function testItShouldHandleResponseEveryTimeWhenAsyncModeIsTrue(): void $poll = new Poll($kafkaProducer, $configManager); // Expectations + $kafkaProducer->expects() + ->poll(0) + ->times(3); + $kafkaProducer->expects() ->flush(4000) ->times(3) From abe0b418060bc5378dbad6a96747136dafc5c0c1 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Mon, 19 Dec 2022 14:04:45 -0300 Subject: [PATCH 12/28] chore(poll): add poll calling after each produced message --- composer.json | 14 +- composer.lock | 751 ++++++++++++++++++++++++++++---------------------- phpcs.xml | 5 - 3 files changed, 421 insertions(+), 349 deletions(-) diff --git a/composer.json b/composer.json index c146253b..41586380 100644 --- a/composer.json +++ b/composer.json @@ -17,14 +17,14 @@ "wikimedia/avro": "^1.7" }, "require-dev": { - "leroy-merlin-br/coding-standard": "^1.0.1", - "phpunit/phpunit": "^9.4.3", - "mockery/mockery": "^1.3.0", - "kwn/php-rdkafka-stubs": "^2.2.0", - "orchestra/testbench": "^6.0", + "leroy-merlin-br/coding-standard": "^3.1.0", + "phpunit/phpunit": "^9.5.24", + "mockery/mockery": "^1.5.1", + "kwn/php-rdkafka-stubs": "^2.2.1", + "orchestra/testbench": "^6.25.0", "dms/phpunit-arraysubset-asserts": "^0.2.1", - "phpro/grumphp": "^1.5", - "vimeo/psalm": "^4.18", + "phpro/grumphp": "^1.13.0", + "vimeo/psalm": "^4.27.0", "psalm/plugin-mockery": "^0.9.1" }, "autoload": { diff --git a/composer.lock b/composer.lock index 07f9f646..58ae09ec 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": "04d9d60bb62fd311c7dcfda058b5a296", + "content-hash": "a5f4d0bbaf6a177817316e97681e6ddf", "packages": [ { "name": "brick/math", @@ -68,16 +68,16 @@ }, { "name": "dflydev/dot-access-data", - "version": "v3.0.1", + "version": "v3.0.2", "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-dot-access-data.git", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c" + "reference": "f41715465d65213d644d3141a6a93081be5d3549" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c", + "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549", + "reference": "f41715465d65213d644d3141a6a93081be5d3549", "shasum": "" }, "require": { @@ -88,7 +88,7 @@ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", "scrutinizer/ocular": "1.6.0", "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^3.14" + "vimeo/psalm": "^4.0.0" }, "type": "library", "extra": { @@ -137,29 +137,29 @@ ], "support": { "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", - "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2" }, - "time": "2021-08-13T13:06:58+00:00" + "time": "2022-10-27T11:44:00+00:00" }, { "name": "doctrine/inflector", - "version": "2.0.5", + "version": "2.0.6", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392" + "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", - "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", + "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", + "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", "shasum": "" }, "require": { "php": "^7.2 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9", + "doctrine/coding-standard": "^10", "phpstan/phpstan": "^1.8", "phpstan/phpstan-phpunit": "^1.1", "phpstan/phpstan-strict-rules": "^1.3", @@ -214,7 +214,7 @@ ], "support": { "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.5" + "source": "https://github.com/doctrine/inflector/tree/2.0.6" }, "funding": [ { @@ -230,7 +230,7 @@ "type": "tidelift" } ], - "time": "2022-09-07T09:01:28+00:00" + "time": "2022-10-20T09:10:12+00:00" }, { "name": "doctrine/lexer", @@ -713,16 +713,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "2.4.1", + "version": "2.4.3", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379" + "reference": "67c26b443f348a51926030c83481b85718457d3d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/69568e4293f4fa993f3b0e51c9723e1e17c41379", - "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379", + "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", + "reference": "67c26b443f348a51926030c83481b85718457d3d", "shasum": "" }, "require": { @@ -812,7 +812,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.1" + "source": "https://github.com/guzzle/psr7/tree/2.4.3" }, "funding": [ { @@ -828,20 +828,20 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:45:39+00:00" + "time": "2022-10-26T14:07:24+00:00" }, { "name": "laravel/framework", - "version": "v8.83.23", + "version": "v8.83.27", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491" + "reference": "e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/framework/zipball/bdc707f8b9bcad289b24cd182d98ec7480ac4491", - "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491", + "url": "https://github.com/gitapi/repos/laravel/framework/zipball/e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49", + "reference": "e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49", "shasum": "" }, "require": { @@ -1001,7 +1001,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-07-26T13:30:00+00:00" + "time": "2022-12-08T15:28:55+00:00" }, { "name": "laravel/serializable-closure", @@ -1065,16 +1065,16 @@ }, { "name": "league/commonmark", - "version": "2.3.5", + "version": "2.3.8", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257" + "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/84d74485fdb7074f4f9dd6f02ab957b1de513257", - "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257", + "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/c493585c130544c4e91d2e0e131e6d35cb0cbc47", + "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47", "shasum": "" }, "require": { @@ -1094,7 +1094,7 @@ "erusev/parsedown": "^1.0", "ext-json": "*", "github/gfm": "0.29.0", - "michelf/php-markdown": "^1.4", + "michelf/php-markdown": "^1.4 || ^2.0", "nyholm/psr7": "^1.5", "phpstan/phpstan": "^1.8.2", "phpunit/phpunit": "^9.5.21", @@ -1102,7 +1102,7 @@ "symfony/finder": "^5.3 | ^6.0", "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", "unleashedtech/php-coding-standard": "^3.1.1", - "vimeo/psalm": "^4.24.0" + "vimeo/psalm": "^4.24.0 || ^5.0.0" }, "suggest": { "symfony/yaml": "v2.3+ required if using the Front Matter extension" @@ -1167,20 +1167,20 @@ "type": "tidelift" } ], - "time": "2022-07-29T10:59:45+00:00" + "time": "2022-12-10T16:02:17+00:00" }, { "name": "league/config", - "version": "v1.1.1", + "version": "v1.2.0", "source": { "type": "git", "url": "https://github.com/thephpleague/config.git", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", "shasum": "" }, "require": { @@ -1189,7 +1189,7 @@ "php": "^7.4 || ^8.0" }, "require-dev": { - "phpstan/phpstan": "^0.12.90", + "phpstan/phpstan": "^1.8.2", "phpunit/phpunit": "^9.5.5", "scrutinizer/ocular": "^1.8.1", "unleashedtech/php-coding-standard": "^3.1", @@ -1249,20 +1249,20 @@ "type": "github" } ], - "time": "2021-08-14T12:15:32+00:00" + "time": "2022-12-11T20:36:23+00:00" }, { "name": "league/flysystem", - "version": "1.1.9", + "version": "1.1.10", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "094defdb4a7001845300334e7c1ee2335925ef99" + "reference": "3239285c825c152bcc315fe0e87d6b55f5972ed1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/flysystem/zipball/094defdb4a7001845300334e7c1ee2335925ef99", - "reference": "094defdb4a7001845300334e7c1ee2335925ef99", + "url": "https://github.com/gitapi/repos/thephpleague/flysystem/zipball/3239285c825c152bcc315fe0e87d6b55f5972ed1", + "reference": "3239285c825c152bcc315fe0e87d6b55f5972ed1", "shasum": "" }, "require": { @@ -1335,7 +1335,7 @@ ], "support": { "issues": "https://github.com/thephpleague/flysystem/issues", - "source": "https://github.com/thephpleague/flysystem/tree/1.1.9" + "source": "https://github.com/thephpleague/flysystem/tree/1.1.10" }, "funding": [ { @@ -1343,7 +1343,7 @@ "type": "other" } ], - "time": "2021-12-09T09:40:50+00:00" + "time": "2022-10-04T09:16:37+00:00" }, { "name": "league/mime-type-detection", @@ -1505,16 +1505,16 @@ }, { "name": "nesbot/carbon", - "version": "2.62.1", + "version": "2.64.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a" + "reference": "889546413c97de2d05063b8cb7b193c2531ea211" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", - "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", + "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/889546413c97de2d05063b8cb7b193c2531ea211", + "reference": "889546413c97de2d05063b8cb7b193c2531ea211", "shasum": "" }, "require": { @@ -1525,7 +1525,7 @@ "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" }, "require-dev": { - "doctrine/dbal": "^2.0 || ^3.0", + "doctrine/dbal": "^2.0 || ^3.1.4", "doctrine/orm": "^2.7", "friendsofphp/php-cs-fixer": "^3.0", "kylekatarnls/multi-tester": "^2.0", @@ -1603,29 +1603,29 @@ "type": "tidelift" } ], - "time": "2022-09-02T07:48:13+00:00" + "time": "2022-11-26T17:36:00+00:00" }, { "name": "nette/schema", - "version": "v1.2.2", + "version": "v1.2.3", "source": { "type": "git", "url": "https://github.com/nette/schema.git", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", + "url": "https://github.com/gitapi/repos/nette/schema/zipball/abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", "shasum": "" }, "require": { "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", - "php": ">=7.1 <8.2" + "php": ">=7.1 <8.3" }, "require-dev": { "nette/tester": "^2.3 || ^2.4", - "phpstan/phpstan-nette": "^0.12", + "phpstan/phpstan-nette": "^1.0", "tracy/tracy": "^2.7" }, "type": "library", @@ -1663,9 +1663,9 @@ ], "support": { "issues": "https://github.com/nette/schema/issues", - "source": "https://github.com/nette/schema/tree/v1.2.2" + "source": "https://github.com/nette/schema/tree/v1.2.3" }, - "time": "2021-10-15T11:40:02+00:00" + "time": "2022-10-13T01:24:26+00:00" }, { "name": "nette/utils", @@ -2550,16 +2550,16 @@ }, { "name": "symfony/console", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1" + "reference": "8e9b9c8dfb33af6057c94e1b44846bee700dc5ef" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/console/zipball/c072aa8f724c3af64e2c7a96b796a4863d24dba1", - "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1", + "url": "https://github.com/gitapi/repos/symfony/console/zipball/8e9b9c8dfb33af6057c94e1b44846bee700dc5ef", + "reference": "8e9b9c8dfb33af6057c94e1b44846bee700dc5ef", "shasum": "" }, "require": { @@ -2629,7 +2629,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.12" + "source": "https://github.com/symfony/console/tree/v5.4.16" }, "funding": [ { @@ -2645,7 +2645,7 @@ "type": "tidelift" } ], - "time": "2022-08-17T13:18:05+00:00" + "time": "2022-11-25T14:09:27+00:00" }, { "name": "symfony/css-selector", @@ -2782,16 +2782,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.4.11", + "version": "v5.4.15", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8" + "reference": "539cf1428b8442303c6e876ad7bf5a7babd91091" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/f75d17cb4769eb38cd5fccbda95cd80a054d35c8", - "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8", + "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/539cf1428b8442303c6e876ad7bf5a7babd91091", + "reference": "539cf1428b8442303c6e876ad7bf5a7babd91091", "shasum": "" }, "require": { @@ -2833,7 +2833,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v5.4.11" + "source": "https://github.com/symfony/error-handler/tree/v5.4.15" }, "funding": [ { @@ -2849,7 +2849,7 @@ "type": "tidelift" } ], - "time": "2022-07-29T07:37:50+00:00" + "time": "2022-10-27T06:32:25+00:00" }, { "name": "symfony/event-dispatcher", @@ -3080,16 +3080,16 @@ }, { "name": "symfony/http-foundation", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791" + "reference": "5032c5849aef24741e1970cb03511b0dd131d838" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/f4bfe9611b113b15d98a43da68ec9b5a00d56791", - "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791", + "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/5032c5849aef24741e1970cb03511b0dd131d838", + "reference": "5032c5849aef24741e1970cb03511b0dd131d838", "shasum": "" }, "require": { @@ -3136,7 +3136,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.12" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.16" }, "funding": [ { @@ -3152,20 +3152,20 @@ "type": "tidelift" } ], - "time": "2022-08-19T07:33:17+00:00" + "time": "2022-11-07T08:06:40+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be" + "reference": "b432c57c5de73634b1859093c1f58e3cd84455a1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/37f660fa3bcd78fe4893ce23ebe934618ec099be", - "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be", + "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/b432c57c5de73634b1859093c1f58e3cd84455a1", + "reference": "b432c57c5de73634b1859093c1f58e3cd84455a1", "shasum": "" }, "require": { @@ -3248,7 +3248,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v5.4.12" + "source": "https://github.com/symfony/http-kernel/tree/v5.4.16" }, "funding": [ { @@ -3264,20 +3264,20 @@ "type": "tidelift" } ], - "time": "2022-08-26T14:40:40+00:00" + "time": "2022-11-28T18:08:58+00:00" }, { "name": "symfony/mime", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90" + "reference": "46eeedb08f0832b1b61a84c612d945fc85ee4734" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/mime/zipball/03876e9c5a36f5b45e7d9a381edda5421eff8a90", - "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90", + "url": "https://github.com/gitapi/repos/symfony/mime/zipball/46eeedb08f0832b1b61a84c612d945fc85ee4734", + "reference": "46eeedb08f0832b1b61a84c612d945fc85ee4734", "shasum": "" }, "require": { @@ -3291,7 +3291,8 @@ "egulias/email-validator": "~3.0.0", "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", - "symfony/mailer": "<4.4" + "symfony/mailer": "<4.4", + "symfony/serializer": "<5.4.14|>=6.0,<6.0.14|>=6.1,<6.1.6" }, "require-dev": { "egulias/email-validator": "^2.1.10|^3.1", @@ -3299,7 +3300,7 @@ "symfony/dependency-injection": "^4.4|^5.0|^6.0", "symfony/property-access": "^4.4|^5.1|^6.0", "symfony/property-info": "^4.4|^5.1|^6.0", - "symfony/serializer": "^5.2|^6.0" + "symfony/serializer": "^5.4.14|~6.0.14|^6.1.6" }, "type": "library", "autoload": { @@ -3331,7 +3332,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.12" + "source": "https://github.com/symfony/mime/tree/v5.4.16" }, "funding": [ { @@ -3347,20 +3348,20 @@ "type": "tidelift" } ], - "time": "2022-08-19T14:24:03+00:00" + "time": "2022-11-26T16:45:22+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4" + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-ctype/zipball/6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", + "url": "https://github.com/gitapi/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", "shasum": "" }, "require": { @@ -3375,7 +3376,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3413,7 +3414,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" }, "funding": [ { @@ -3429,20 +3430,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-iconv", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", - "reference": "143f1881e655bebca1312722af8068de235ae5dc" + "reference": "927013f3aac555983a5059aada98e1907d842695" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-iconv/zipball/143f1881e655bebca1312722af8068de235ae5dc", - "reference": "143f1881e655bebca1312722af8068de235ae5dc", + "url": "https://github.com/gitapi/repos/symfony/polyfill-iconv/zipball/927013f3aac555983a5059aada98e1907d842695", + "reference": "927013f3aac555983a5059aada98e1907d842695", "shasum": "" }, "require": { @@ -3457,7 +3458,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3496,7 +3497,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-iconv/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-iconv/tree/v1.27.0" }, "funding": [ { @@ -3512,20 +3513,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "433d05519ce6990bf3530fba6957499d327395c2" + "reference": "511a08c03c1960e08a883f4cffcacd219b758354" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-grapheme/zipball/433d05519ce6990bf3530fba6957499d327395c2", - "reference": "433d05519ce6990bf3530fba6957499d327395c2", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", + "reference": "511a08c03c1960e08a883f4cffcacd219b758354", "shasum": "" }, "require": { @@ -3537,7 +3538,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3577,7 +3578,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" }, "funding": [ { @@ -3593,20 +3594,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8" + "reference": "639084e360537a19f9ee352433b84ce831f3d2da" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-idn/zipball/59a8d271f00dd0e4c2e518104cc7963f655a1aa8", - "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-idn/zipball/639084e360537a19f9ee352433b84ce831f3d2da", + "reference": "639084e360537a19f9ee352433b84ce831f3d2da", "shasum": "" }, "require": { @@ -3620,7 +3621,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3664,7 +3665,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.27.0" }, "funding": [ { @@ -3680,20 +3681,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd" + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-normalizer/zipball/219aa369ceff116e673852dce47c3a41794c14bd", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", "shasum": "" }, "require": { @@ -3705,7 +3706,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3748,7 +3749,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" }, "funding": [ { @@ -3764,20 +3765,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e" + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-mbstring/zipball/9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", + "url": "https://github.com/gitapi/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", "shasum": "" }, "require": { @@ -3792,7 +3793,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3831,7 +3832,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" }, "funding": [ { @@ -3847,20 +3848,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php72", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2" + "reference": "869329b1e9894268a8a61dabb69153029b7a8c97" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php72/zipball/bf44a9fd41feaac72b074de600314a93e2ae78e2", - "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php72/zipball/869329b1e9894268a8a61dabb69153029b7a8c97", + "reference": "869329b1e9894268a8a61dabb69153029b7a8c97", "shasum": "" }, "require": { @@ -3869,7 +3870,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3907,7 +3908,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php72/tree/v1.27.0" }, "funding": [ { @@ -3923,20 +3924,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85" + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php73/zipball/e440d35fa0286f77fb45b79a03fedbeda9307e85", - "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", "shasum": "" }, "require": { @@ -3945,7 +3946,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3986,7 +3987,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" }, "funding": [ { @@ -4002,20 +4003,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace" + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php80/zipball/cfa0ae98841b9e461207c13ab093d76b0fa7bace", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", "shasum": "" }, "require": { @@ -4024,7 +4025,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4069,7 +4070,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" }, "funding": [ { @@ -4085,20 +4086,20 @@ "type": "tidelift" } ], - "time": "2022-05-10T07:21:04+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1" + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php81/zipball/13f6d1271c663dc5ae9fb843a8f16521db7687a1", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", "shasum": "" }, "require": { @@ -4107,7 +4108,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4148,7 +4149,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" }, "funding": [ { @@ -4164,7 +4165,7 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/process", @@ -4230,16 +4231,16 @@ }, { "name": "symfony/routing", - "version": "v5.4.11", + "version": "v5.4.15", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226" + "reference": "5c9b129efe9abce9470e384bf65d8a7e262eee69" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/routing/zipball/3e01ccd9b2a3a4167ba2b3c53612762300300226", - "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226", + "url": "https://github.com/gitapi/repos/symfony/routing/zipball/5c9b129efe9abce9470e384bf65d8a7e262eee69", + "reference": "5c9b129efe9abce9470e384bf65d8a7e262eee69", "shasum": "" }, "require": { @@ -4300,7 +4301,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v5.4.11" + "source": "https://github.com/symfony/routing/tree/v5.4.15" }, "funding": [ { @@ -4316,7 +4317,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-10-13T14:10:41+00:00" }, { "name": "symfony/service-contracts", @@ -4403,16 +4404,16 @@ }, { "name": "symfony/string", - "version": "v5.4.12", + "version": "v5.4.15", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058" + "reference": "571334ce9f687e3e6af72db4d3b2a9431e4fd9ed" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/string/zipball/2fc515e512d721bf31ea76bd02fe23ada4640058", - "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058", + "url": "https://github.com/gitapi/repos/symfony/string/zipball/571334ce9f687e3e6af72db4d3b2a9431e4fd9ed", + "reference": "571334ce9f687e3e6af72db4d3b2a9431e4fd9ed", "shasum": "" }, "require": { @@ -4469,7 +4470,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.12" + "source": "https://github.com/symfony/string/tree/v5.4.15" }, "funding": [ { @@ -4485,20 +4486,20 @@ "type": "tidelift" } ], - "time": "2022-08-12T17:03:11+00:00" + "time": "2022-10-05T15:16:54+00:00" }, { "name": "symfony/translation", - "version": "v5.4.12", + "version": "v5.4.14", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae" + "reference": "f0ed07675863aa6e3939df8b1bc879450b585cab" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/translation/zipball/42ecc77eb4f229ce2df702a648ec93b8478d76ae", - "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae", + "url": "https://github.com/gitapi/repos/symfony/translation/zipball/f0ed07675863aa6e3939df8b1bc879450b585cab", + "reference": "f0ed07675863aa6e3939df8b1bc879450b585cab", "shasum": "" }, "require": { @@ -4566,7 +4567,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.12" + "source": "https://github.com/symfony/translation/tree/v5.4.14" }, "funding": [ { @@ -4582,7 +4583,7 @@ "type": "tidelift" } ], - "time": "2022-08-02T15:52:22+00:00" + "time": "2022-10-07T08:01:20+00:00" }, { "name": "symfony/translation-contracts", @@ -4664,16 +4665,16 @@ }, { "name": "symfony/var-dumper", - "version": "v5.4.11", + "version": "v5.4.14", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861" + "reference": "6894d06145fefebd9a4c7272baa026a1c394a430" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/b8f306d7b8ef34fb3db3305be97ba8e088fb4861", - "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861", + "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/6894d06145fefebd9a4c7272baa026a1c394a430", + "reference": "6894d06145fefebd9a4c7272baa026a1c394a430", "shasum": "" }, "require": { @@ -4733,7 +4734,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.4.11" + "source": "https://github.com/symfony/var-dumper/tree/v5.4.14" }, "funding": [ { @@ -4749,7 +4750,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-10-07T08:01:20+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -4806,16 +4807,16 @@ }, { "name": "vlucas/phpdotenv", - "version": "v5.4.1", + "version": "v5.5.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f" + "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vlucas/phpdotenv/zipball/264dce589e7ce37a7ba99cb901eed8249fbec92f", - "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f", + "url": "https://github.com/gitapi/repos/vlucas/phpdotenv/zipball/1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", + "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", "shasum": "" }, "require": { @@ -4830,15 +4831,19 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.4.1", "ext-filter": "*", - "phpunit/phpunit": "^7.5.20 || ^8.5.21 || ^9.5.10" + "phpunit/phpunit": "^7.5.20 || ^8.5.30 || ^9.5.25" }, "suggest": { "ext-filter": "Required to use the boolean validator." }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": true + }, "branch-alias": { - "dev-master": "5.4-dev" + "dev-master": "5.5-dev" } }, "autoload": { @@ -4870,7 +4875,7 @@ ], "support": { "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.4.1" + "source": "https://github.com/vlucas/phpdotenv/tree/v5.5.0" }, "funding": [ { @@ -4882,7 +4887,7 @@ "type": "tidelift" } ], - "time": "2021-12-12T23:22:04+00:00" + "time": "2022-10-16T01:01:54+00:00" }, { "name": "voku/portable-ascii", @@ -5084,8 +5089,9 @@ "serialization" ], "support": { - "source": "https://github.com/wikimedia/avro-php/tree/master" + "source": "https://github.com/wikimedia/avro-php/tree/v1.9.0" }, + "abandoned": "rg/avro-php", "time": "2019-09-16T15:18:39+00:00" } ], @@ -5709,16 +5715,16 @@ }, { "name": "composer/pcre", - "version": "3.0.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "url": "https://github.com/gitapi/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", "shasum": "" }, "require": { @@ -5760,7 +5766,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.0.0" + "source": "https://github.com/composer/pcre/tree/3.1.0" }, "funding": [ { @@ -5776,7 +5782,7 @@ "type": "tidelift" } ], - "time": "2022-02-25T20:21:48+00:00" + "time": "2022-11-17T09:50:14+00:00" }, { "name": "composer/semver", @@ -6084,16 +6090,16 @@ }, { "name": "doctrine/collections", - "version": "1.7.3", + "version": "1.8.0", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "09dde3eb237756190f2de738d3c97cff10a8407b" + "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/09dde3eb237756190f2de738d3c97cff10a8407b", - "reference": "09dde3eb237756190f2de738d3c97cff10a8407b", + "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/2b44dd4cbca8b5744327de78bafef5945c7e7b5e", + "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e", "shasum": "" }, "require": { @@ -6148,9 +6154,9 @@ ], "support": { "issues": "https://github.com/doctrine/collections/issues", - "source": "https://github.com/doctrine/collections/tree/1.7.3" + "source": "https://github.com/doctrine/collections/tree/1.8.0" }, - "time": "2022-09-01T19:34:23+00:00" + "time": "2022-09-01T20:12:10+00:00" }, { "name": "doctrine/deprecations", @@ -6267,20 +6273,20 @@ }, { "name": "fakerphp/faker", - "version": "v1.20.0", + "version": "v1.21.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b" + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/37f751c67a5372d4e26353bd9384bc03744ec77b", - "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b", + "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0", + "php": "^7.4 || ^8.0", "psr/container": "^1.0 || ^2.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" }, @@ -6291,7 +6297,8 @@ "bamarni/composer-bin-plugin": "^1.4.1", "doctrine/persistence": "^1.3 || ^2.0", "ext-intl": "*", - "symfony/phpunit-bridge": "^4.4 || ^5.2" + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" }, "suggest": { "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", @@ -6303,7 +6310,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v1.20-dev" + "dev-main": "v1.21-dev" } }, "autoload": { @@ -6328,9 +6335,9 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.20.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.21.0" }, - "time": "2022-07-20T13:12:54+00:00" + "time": "2022-12-13T13:54:32+00:00" }, { "name": "felixfbecker/advanced-json-rpc", @@ -6435,16 +6442,16 @@ }, { "name": "gitonomy/gitlib", - "version": "v1.3.6", + "version": "v1.3.7", "source": { "type": "git", "url": "https://github.com/gitonomy/gitlib.git", - "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2" + "reference": "00b57b79f02396aa4c7c163f76fe2bc48faebbb7" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/33ae0a2e469accc19d1a06bed63ed93dbf368ae2", - "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2", + "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/00b57b79f02396aa4c7c163f76fe2bc48faebbb7", + "reference": "00b57b79f02396aa4c7c163f76fe2bc48faebbb7", "shasum": "" }, "require": { @@ -6455,6 +6462,7 @@ }, "require-dev": { "ext-fileinfo": "*", + "phpspec/prophecy": "^1.10.2", "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.20 || ^9.5.9", "psr/log": "^1.0" }, @@ -6497,7 +6505,7 @@ "description": "Library for accessing git", "support": { "issues": "https://github.com/gitonomy/gitlib/issues", - "source": "https://github.com/gitonomy/gitlib/tree/v1.3.6" + "source": "https://github.com/gitonomy/gitlib/tree/v1.3.7" }, "funding": [ { @@ -6505,7 +6513,7 @@ "type": "tidelift" } ], - "time": "2022-08-05T09:17:13+00:00" + "time": "2022-10-04T14:20:15+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -6598,23 +6606,23 @@ }, { "name": "leroy-merlin-br/coding-standard", - "version": "v1.0.1", + "version": "v3.1.0", "source": { "type": "git", - "url": "https://github.com/leroy-merlin-br/php-coding-standard.git", - "reference": "a7d9c9eff91d384561a0a59617bae8bed11a2de5" + "url": "git@github.com:leroy-merlin-br/php-coding-standard.git", + "reference": "7c9cc6c20d89a5e8029e4cce5661a0434adcc4e1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/leroy-merlin-br/php-coding-standard/zipball/a7d9c9eff91d384561a0a59617bae8bed11a2de5", - "reference": "a7d9c9eff91d384561a0a59617bae8bed11a2de5", + "url": "https://github.com/gitapi/repos/leroy-merlin-br/php-coding-standard/zipball/7c9cc6c20d89a5e8029e4cce5661a0434adcc4e1", + "reference": "7c9cc6c20d89a5e8029e4cce5661a0434adcc4e1", "shasum": "" }, "require": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", - "php": "^7.1", - "slevomat/coding-standard": "^4.8.6", - "squizlabs/php_codesniffer": "^3.4.0" + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.2", + "php": ">=7.4", + "slevomat/coding-standard": "^7.0.18", + "squizlabs/php_codesniffer": "^3.6.2" }, "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", @@ -6641,11 +6649,7 @@ "standard", "style" ], - "support": { - "issues": "https://github.com/leroy-merlin-br/php-coding-standard/issues", - "source": "https://github.com/leroy-merlin-br/php-coding-standard/tree/v1.0.1" - }, - "time": "2020-11-25T15:58:10+00:00" + "time": "2022-04-29T20:29:50+00:00" }, { "name": "mockery/mockery", @@ -6780,16 +6784,16 @@ }, { "name": "netresearch/jsonmapper", - "version": "v4.0.0", + "version": "v4.1.0", "source": { "type": "git", "url": "https://github.com/cweiske/jsonmapper.git", - "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d" + "reference": "cfa81ea1d35294d64adb9c68aa4cb9e92400e53f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", - "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", + "url": "https://github.com/gitapi/repos/cweiske/jsonmapper/zipball/cfa81ea1d35294d64adb9c68aa4cb9e92400e53f", + "reference": "cfa81ea1d35294d64adb9c68aa4cb9e92400e53f", "shasum": "" }, "require": { @@ -6825,22 +6829,22 @@ "support": { "email": "cweiske@cweiske.de", "issues": "https://github.com/cweiske/jsonmapper/issues", - "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0" + "source": "https://github.com/cweiske/jsonmapper/tree/v4.1.0" }, - "time": "2020-12-01T19:48:11+00:00" + "time": "2022-12-08T20:46:14+00:00" }, { "name": "nikic/php-parser", - "version": "v4.15.1", + "version": "v4.15.2", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900" + "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", + "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", + "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", "shasum": "" }, "require": { @@ -6881,9 +6885,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.2" }, - "time": "2022-09-04T07:30:47+00:00" + "time": "2022-11-12T15:38:23+00:00" }, { "name": "ondram/ci-detector", @@ -7018,22 +7022,22 @@ }, { "name": "orchestra/testbench", - "version": "v6.25.0", + "version": "v6.25.1", "source": { "type": "git", "url": "https://github.com/orchestral/testbench.git", - "reference": "a65b90b78caed1fdface168ca02af34f3422e513" + "reference": "0516123d26d64117bc04f7e9cb982eae2624e750" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/a65b90b78caed1fdface168ca02af34f3422e513", - "reference": "a65b90b78caed1fdface168ca02af34f3422e513", + "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/0516123d26d64117bc04f7e9cb982eae2624e750", + "reference": "0516123d26d64117bc04f7e9cb982eae2624e750", "shasum": "" }, "require": { "laravel/framework": "^8.75", "mockery/mockery": "^1.4.4", - "orchestra/testbench-core": "^6.29", + "orchestra/testbench-core": "^6.29.1", "php": "^7.3 || ^8.0", "phpunit/phpunit": "^8.5.21 || ^9.5.10", "spatie/laravel-ray": "^1.26.2" @@ -7067,7 +7071,7 @@ ], "support": { "issues": "https://github.com/orchestral/testbench/issues", - "source": "https://github.com/orchestral/testbench/tree/v6.25.0" + "source": "https://github.com/orchestral/testbench/tree/v6.25.1" }, "funding": [ { @@ -7079,20 +7083,20 @@ "type": "liberapay" } ], - "time": "2022-08-24T01:41:23+00:00" + "time": "2022-10-11T14:01:10+00:00" }, { "name": "orchestra/testbench-core", - "version": "v6.29.0", + "version": "v6.29.1", "source": { "type": "git", "url": "https://github.com/orchestral/testbench-core.git", - "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4" + "reference": "29a7586915885f89b8d2203efe20f76afe9cf956" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/8eeace7d979a7905e6fab77a30a3b05da99459c4", - "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4", + "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/29a7586915885f89b8d2203efe20f76afe9cf956", + "reference": "29a7586915885f89b8d2203efe20f76afe9cf956", "shasum": "" }, "require": { @@ -7169,7 +7173,7 @@ "type": "liberapay" } ], - "time": "2022-08-24T00:15:20+00:00" + "time": "2022-10-11T12:12:52+00:00" }, { "name": "phar-io/manifest", @@ -7394,25 +7398,30 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.6.1", + "version": "1.6.2", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "77a32518733312af16a44300404e945338981de3" + "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpDocumentor/TypeResolver/zipball/77a32518733312af16a44300404e945338981de3", - "reference": "77a32518733312af16a44300404e945338981de3", + "url": "https://github.com/gitapi/repos/phpDocumentor/TypeResolver/zipball/48f445a408c131e38cab1c235aa6d2bb7a0bb20d", + "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", + "php": "^7.4 || ^8.0", "phpdocumentor/reflection-common": "^2.0" }, "require-dev": { "ext-tokenizer": "*", - "psalm/phar": "^4.8" + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.13.9", + "vimeo/psalm": "^4.25" }, "type": "library", "extra": { @@ -7438,9 +7447,9 @@ "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.6.1" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.2" }, - "time": "2022-03-15T21:29:03+00:00" + "time": "2022-10-14T12:47:21+00:00" }, { "name": "phpro/grumphp", @@ -7558,18 +7567,63 @@ }, "time": "2022-06-24T08:32:25+00:00" }, + { + "name": "phpstan/phpdoc-parser", + "version": "1.15.2", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "5941477f100993652218928039d530b75a13a9ca" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/phpstan/phpdoc-parser/zipball/5941477f100993652218928039d530b75a13a9ca", + "reference": "5941477f100993652218928039d530b75a13a9ca", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.5", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/phpunit": "^9.5", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPDoc parser with support for nullable, intersection and generic types", + "support": { + "issues": "https://github.com/phpstan/phpdoc-parser/issues", + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.15.2" + }, + "time": "2022-12-16T06:42:48+00:00" + }, { "name": "phpunit/php-code-coverage", - "version": "9.2.17", + "version": "9.2.22", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8" + "reference": "e4bf60d2220b4baaa0572986b5d69870226b06df" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/aa94dc41e8661fe90c7316849907cba3007b10d8", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8", + "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/e4bf60d2220b4baaa0572986b5d69870226b06df", + "reference": "e4bf60d2220b4baaa0572986b5d69870226b06df", "shasum": "" }, "require": { @@ -7625,7 +7679,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.17" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.22" }, "funding": [ { @@ -7633,7 +7687,7 @@ "type": "github" } ], - "time": "2022-08-30T12:24:04+00:00" + "time": "2022-12-18T16:40:55+00:00" }, { "name": "phpunit/php-file-iterator", @@ -7878,16 +7932,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.24", + "version": "9.5.27", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5" + "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", - "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", + "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/a2bc7ffdca99f92d959b3f2270529334030bba38", + "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38", "shasum": "" }, "require": { @@ -7909,14 +7963,14 @@ "phpunit/php-timer": "^5.0.2", "sebastian/cli-parser": "^1.0.1", "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.5", + "sebastian/comparator": "^4.0.8", "sebastian/diff": "^4.0.3", "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.3", + "sebastian/exporter": "^4.0.5", "sebastian/global-state": "^5.0.1", "sebastian/object-enumerator": "^4.0.3", "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.1", + "sebastian/type": "^3.2", "sebastian/version": "^3.0.2" }, "suggest": { @@ -7960,7 +8014,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.24" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.27" }, "funding": [ { @@ -7970,9 +8024,13 @@ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", + "type": "tidelift" } ], - "time": "2022-08-30T07:42:16+00:00" + "time": "2022-12-09T07:31:23+00:00" }, { "name": "pimple/pimple", @@ -9111,31 +9169,39 @@ }, { "name": "slevomat/coding-standard", - "version": "4.8.7", + "version": "7.2.1", "source": { "type": "git", "url": "https://github.com/slevomat/coding-standard.git", - "reference": "bff96313d8c7c2ba57a4edb13c1c141df8988c58" + "reference": "aff06ae7a84e4534bf6f821dc982a93a5d477c90" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/slevomat/coding-standard/zipball/bff96313d8c7c2ba57a4edb13c1c141df8988c58", - "reference": "bff96313d8c7c2ba57a4edb13c1c141df8988c58", + "url": "https://github.com/gitapi/repos/slevomat/coding-standard/zipball/aff06ae7a84e4534bf6f821dc982a93a5d477c90", + "reference": "aff06ae7a84e4534bf6f821dc982a93a5d477c90", "shasum": "" }, "require": { - "php": "^7.1", - "squizlabs/php_codesniffer": "^3.4.0" + "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7", + "php": "^7.2 || ^8.0", + "phpstan/phpdoc-parser": "^1.5.1", + "squizlabs/php_codesniffer": "^3.6.2" }, "require-dev": { - "jakub-onderka/php-parallel-lint": "1.0.0", - "phing/phing": "2.16.1", - "phpstan/phpstan": "0.9.2", - "phpstan/phpstan-phpunit": "0.9.4", - "phpstan/phpstan-strict-rules": "0.9", - "phpunit/phpunit": "7.5.1" + "phing/phing": "2.17.3", + "php-parallel-lint/php-parallel-lint": "1.3.2", + "phpstan/phpstan": "1.4.10|1.7.1", + "phpstan/phpstan-deprecation-rules": "1.0.0", + "phpstan/phpstan-phpunit": "1.0.0|1.1.1", + "phpstan/phpstan-strict-rules": "1.2.3", + "phpunit/phpunit": "7.5.20|8.5.21|9.5.20" }, "type": "phpcodesniffer-standard", + "extra": { + "branch-alias": { + "dev-master": "7.x-dev" + } + }, "autoload": { "psr-4": { "SlevomatCodingStandard\\": "SlevomatCodingStandard" @@ -9148,9 +9214,19 @@ "description": "Slevomat Coding Standard for PHP_CodeSniffer complements Consistence Coding Standard by providing sniffs with additional checks.", "support": { "issues": "https://github.com/slevomat/coding-standard/issues", - "source": "https://github.com/slevomat/coding-standard/tree/4.8.7" + "source": "https://github.com/slevomat/coding-standard/tree/7.2.1" }, - "time": "2019-01-03T13:15:50+00:00" + "funding": [ + { + "url": "https://github.com/kukulich", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/slevomat/coding-standard", + "type": "tidelift" + } + ], + "time": "2022-05-25T10:58:12+00:00" }, { "name": "spatie/backtrace", @@ -9216,16 +9292,16 @@ }, { "name": "spatie/laravel-ray", - "version": "1.30.0", + "version": "1.31.0", "source": { "type": "git", "url": "https://github.com/spatie/laravel-ray.git", - "reference": "1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6" + "reference": "7394694afd89d05879e7a69c54abab73c1199acd" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/spatie/laravel-ray/zipball/1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6", - "reference": "1afe8d38cf13e9f7d0f6438e67bca71c3ed8d1f6", + "url": "https://github.com/gitapi/repos/spatie/laravel-ray/zipball/7394694afd89d05879e7a69c54abab73c1199acd", + "reference": "7394694afd89d05879e7a69c54abab73c1199acd", "shasum": "" }, "require": { @@ -9284,7 +9360,7 @@ ], "support": { "issues": "https://github.com/spatie/laravel-ray/issues", - "source": "https://github.com/spatie/laravel-ray/tree/1.30.0" + "source": "https://github.com/spatie/laravel-ray/tree/1.31.0" }, "funding": [ { @@ -9296,7 +9372,7 @@ "type": "other" } ], - "time": "2022-07-29T10:02:43+00:00" + "time": "2022-09-20T13:13:22+00:00" }, { "name": "spatie/macroable", @@ -9560,16 +9636,16 @@ }, { "name": "symfony/dependency-injection", - "version": "v5.4.11", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62" + "reference": "a93e1863500940780fc1235f52d54397be2d14b3" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a8b9251016e9476db73e25fa836904bc0bf74c62", - "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62", + "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a93e1863500940780fc1235f52d54397be2d14b3", + "reference": "a93e1863500940780fc1235f52d54397be2d14b3", "shasum": "" }, "require": { @@ -9629,7 +9705,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v5.4.11" + "source": "https://github.com/symfony/dependency-injection/tree/v5.4.16" }, "funding": [ { @@ -9645,7 +9721,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-11-25T07:33:13+00:00" }, { "name": "symfony/dotenv", @@ -9720,16 +9796,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.12", + "version": "v5.4.13", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447" + "reference": "ac09569844a9109a5966b9438fc29113ce77cf51" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/2d67c1f9a1937406a9be3171b4b22250c0a11447", - "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447", + "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/ac09569844a9109a5966b9438fc29113ce77cf51", + "reference": "ac09569844a9109a5966b9438fc29113ce77cf51", "shasum": "" }, "require": { @@ -9764,7 +9840,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.12" + "source": "https://github.com/symfony/filesystem/tree/v5.4.13" }, "funding": [ { @@ -9780,7 +9856,7 @@ "type": "tidelift" } ], - "time": "2022-08-02T13:48:16+00:00" + "time": "2022-09-21T19:53:16+00:00" }, { "name": "symfony/options-resolver", @@ -9853,16 +9929,16 @@ }, { "name": "symfony/stopwatch", - "version": "v5.4.5", + "version": "v5.4.13", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30" + "reference": "6df7a3effde34d81717bbef4591e5ffe32226d69" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/stopwatch/zipball/4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", - "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", + "url": "https://github.com/gitapi/repos/symfony/stopwatch/zipball/6df7a3effde34d81717bbef4591e5ffe32226d69", + "reference": "6df7a3effde34d81717bbef4591e5ffe32226d69", "shasum": "" }, "require": { @@ -9895,7 +9971,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.5" + "source": "https://github.com/symfony/stopwatch/tree/v5.4.13" }, "funding": [ { @@ -9911,20 +9987,20 @@ "type": "tidelift" } ], - "time": "2022-02-18T16:06:09+00:00" + "time": "2022-09-28T13:19:49+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c" + "reference": "ebd37c71f62d5ec5f6e27de3e06fee492d4c6298" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", - "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", + "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/ebd37c71f62d5ec5f6e27de3e06fee492d4c6298", + "reference": "ebd37c71f62d5ec5f6e27de3e06fee492d4c6298", "shasum": "" }, "require": { @@ -9970,7 +10046,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.12" + "source": "https://github.com/symfony/yaml/tree/v5.4.16" }, "funding": [ { @@ -9986,7 +10062,7 @@ "type": "tidelift" } ], - "time": "2022-08-02T15:52:22+00:00" + "time": "2022-11-25T16:04:03+00:00" }, { "name": "theseer/tokenizer", @@ -10040,16 +10116,16 @@ }, { "name": "vimeo/psalm", - "version": "4.27.0", + "version": "4.30.0", "source": { "type": "git", "url": "https://github.com/vimeo/psalm.git", - "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff" + "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/faf106e717c37b8c81721845dba9de3d8deed8ff", - "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff", + "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/d0bc6e25d89f649e4f36a534f330f8bb4643dd69", + "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69", "shasum": "" }, "require": { @@ -10088,6 +10164,7 @@ "phpdocumentor/reflection-docblock": "^5", "phpmyadmin/sql-parser": "5.1.0||dev-master", "phpspec/prophecy": ">=1.9.0", + "phpstan/phpdoc-parser": "1.2.* || 1.6.4", "phpunit/phpunit": "^9.0", "psalm/plugin-phpunit": "^0.16", "slevomat/coding-standard": "^7.0", @@ -10141,9 +10218,9 @@ ], "support": { "issues": "https://github.com/vimeo/psalm/issues", - "source": "https://github.com/vimeo/psalm/tree/4.27.0" + "source": "https://github.com/vimeo/psalm/tree/4.30.0" }, - "time": "2022-08-31T13:47:09+00:00" + "time": "2022-11-06T20:37:08+00:00" }, { "name": "webmozart/path-util", @@ -10198,16 +10275,16 @@ }, { "name": "zbateson/mail-mime-parser", - "version": "2.2.2", + "version": "2.2.3", "source": { "type": "git", "url": "https://github.com/zbateson/mail-mime-parser.git", - "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86" + "reference": "295c7f82a8c44af685680d9df6714beb812e90ff" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/318cd809afebe48e8fb41625b05b25470fb3fa86", - "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86", + "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/295c7f82a8c44af685680d9df6714beb812e90ff", + "reference": "295c7f82a8c44af685680d9df6714beb812e90ff", "shasum": "" }, "require": { @@ -10267,7 +10344,7 @@ "type": "github" } ], - "time": "2022-09-01T15:59:13+00:00" + "time": "2022-09-28T16:31:49+00:00" }, { "name": "zbateson/mb-wrapper", diff --git a/phpcs.xml b/phpcs.xml index 8f82781d..d615f1ad 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -20,9 +20,4 @@ config - - - src/Producer.php - src/Record/ConsumerRecord.php - From b1d5559182f9ce641d760871fc6e3b58fedd8742 Mon Sep 17 00:00:00 2001 From: Gabriel Fonseca Date: Tue, 5 Jul 2022 12:15:46 -0300 Subject: [PATCH 13/28] chore(php81): change docker image --- composer.json | 11 +++++++++-- rector.php | 15 +++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 rector.php diff --git a/composer.json b/composer.json index 41586380..8d952cb6 100644 --- a/composer.json +++ b/composer.json @@ -17,7 +17,7 @@ "wikimedia/avro": "^1.7" }, "require-dev": { - "leroy-merlin-br/coding-standard": "^3.1.0", + "leroy-merlin-br/coding-standard": "^v3.1.0", "phpunit/phpunit": "^9.5.24", "mockery/mockery": "^1.5.1", "kwn/php-rdkafka-stubs": "^2.2.1", @@ -25,7 +25,8 @@ "dms/phpunit-arraysubset-asserts": "^0.2.1", "phpro/grumphp": "^1.13.0", "vimeo/psalm": "^4.27.0", - "psalm/plugin-mockery": "^0.9.1" + "psalm/plugin-mockery": "^0.9.1", + "rector/rector": "^0.13.7" }, "autoload": { "psr-4": { @@ -58,5 +59,11 @@ "@composer install", "vendor/bin/grumphp git:init" ] + }, + "config": { + "allow-plugins": { + "dealerdirect/phpcodesniffer-composer-installer": true, + "phpro/grumphp": true + } } } diff --git a/rector.php b/rector.php new file mode 100644 index 00000000..f43c3035 --- /dev/null +++ b/rector.php @@ -0,0 +1,15 @@ +paths([__DIR__ . '/src', __DIR__ . '/tests']); + + $rectorConfig->sets([ + SetList::CODE_QUALITY, + ]); + + $rectorConfig->phpVersion(PhpVersion::PHP_74); +}; From 6d6b07fc0fdd16d90f295e61a13afa303d658b5e Mon Sep 17 00:00:00 2001 From: Gabriel Fonseca Date: Wed, 6 Jul 2022 15:31:08 -0300 Subject: [PATCH 14/28] chore(php81): apply phpcs --- config/kafka.php | 6 +- phpcs.xml | 3 + src/AbstractConfigManager.php | 11 +- .../AuthenticationInterface.php | 1 + src/Authentication/Factory.php | 21 +++- src/Authentication/NoAuthentication.php | 1 + src/Authentication/SASLAuthentication.php | 31 +++-- src/Authentication/SSLAuthentication.php | 31 +++-- src/Avro/CachedSchemaRegistryClient.php | 33 +++-- src/Avro/Client.php | 12 +- src/Avro/ClientFactory.php | 1 + src/Avro/Schema.php | 27 ++-- .../Serializer/Decoders/DecoderInterface.php | 1 + src/Avro/Serializer/Decoders/SchemaId.php | 6 +- .../Decoders/SchemaSubjectAndVersion.php | 6 +- .../Serializer/Encoders/EncoderInterface.php | 1 + src/Avro/Serializer/Encoders/SchemaId.php | 6 +- .../Encoders/SchemaSubjectAndVersion.php | 1 + src/Avro/Serializer/MessageDecoder.php | 10 +- src/Avro/Serializer/MessageEncoder.php | 26 ++-- src/Avro/Serializer/SchemaFormats.php | 1 + src/Connectors/AbstractConfig.php | 9 +- src/Connectors/Consumer/Config.php | 53 ++++++-- .../Consumer/ConnectorInterface.php | 1 + src/Connectors/Consumer/Factory.php | 34 ++++-- src/Connectors/Consumer/HighLevel.php | 1 + src/Connectors/Consumer/LowLevel.php | 16 ++- src/Connectors/Consumer/Manager.php | 44 +++---- src/Connectors/Producer/Config.php | 18 +-- src/Connectors/Producer/Connector.php | 16 ++- src/Console/ConsumerCommand.php | 16 ++- src/Console/ConsumerMakeCommand.php | 14 +-- src/Console/MiddlewareMakeCommand.php | 14 +-- src/Console/ProducerMakeCommand.php | 14 +-- src/Consumer.php | 13 +- src/ConsumerConfigManager.php | 8 +- src/Consumers/ConsumerInterface.php | 1 + src/Consumers/HighLevel.php | 13 +- src/Consumers/LowLevel.php | 16 +-- src/Consumers/Runner.php | 8 +- src/Exceptions/AuthenticationException.php | 1 + src/Exceptions/ConfigurationException.php | 1 + src/Exceptions/JsonException.php | 1 + src/Exceptions/ResponseErrorException.php | 1 + src/Exceptions/ResponseTimeoutException.php | 1 + src/Exceptions/ResponseWarningException.php | 1 + src/Facades/Metamorphosis.php | 1 + src/MetamorphosisServiceProvider.php | 5 +- src/Middlewares/AvroSchemaDecoder.php | 19 ++- src/Middlewares/AvroSchemaMixedEncoder.php | 30 ++--- .../Handler/AbstractMiddlewareHandler.php | 15 +-- src/Middlewares/Handler/Consumer.php | 10 +- src/Middlewares/Handler/Dispatcher.php | 1 + src/Middlewares/Handler/Iterator.php | 1 + .../Handler/MiddlewareHandlerInterface.php | 1 + src/Middlewares/Handler/Producer.php | 42 ++++--- src/Middlewares/JsonDecode.php | 3 +- src/Middlewares/Log.php | 15 +-- src/Middlewares/MiddlewareInterface.php | 1 + src/Producer.php | 41 ++++--- src/Producer/Poll.php | 52 +++----- src/ProducerConfigManager.php | 11 +- src/Record/ConsumerRecord.php | 19 ++- src/Record/ProducerRecord.php | 12 +- src/Record/RecordInterface.php | 1 + .../ConfigOptions/Auth/AuthInterface.php | 1 + .../ConfigOptions/Auth/EnumType.php | 1 + src/TopicHandler/ConfigOptions/Auth/None.php | 1 + .../ConfigOptions/Auth/SaslSsl.php | 20 +-- src/TopicHandler/ConfigOptions/Auth/Ssl.php | 20 +-- src/TopicHandler/ConfigOptions/AvroSchema.php | 11 +- src/TopicHandler/ConfigOptions/Broker.php | 7 +- src/TopicHandler/ConfigOptions/Consumer.php | 58 +++------ .../ConfigOptions/Factories/AuthFactory.php | 1 + .../Factories/AvroSchemaFactory.php | 6 +- .../ConfigOptions/Factories/BrokerFactory.php | 1 + .../Factories/ConsumerFactory.php | 6 +- .../Factories/ProducerFactory.php | 1 + src/TopicHandler/ConfigOptions/Producer.php | 40 ++---- src/TopicHandler/Consumer/AbstractHandler.php | 12 +- src/TopicHandler/Consumer/Handler.php | 1 + src/TopicHandler/Producer/AbstractHandler.php | 25 ++-- .../Producer/AbstractProducer.php | 18 ++- .../Producer/HandleableResponseInterface.php | 1 + .../Producer/HandlerInterface.php | 1 + tests/Integration/ConsumerTest.php | 6 +- tests/Integration/Dummies/MessageConsumer.php | 1 + tests/Integration/Dummies/MessageProducer.php | 8 +- .../MessageProducerWithConfigOptions.php | 1 + tests/Integration/ProducerTest.php | 38 +++--- tests/Integration/ProducerWithAvroTest.php | 11 +- .../ProducerWithConfigOptionsTest.php | 13 +- tests/LaravelTestCase.php | 4 + tests/Unit/AbstractConfigManagerTest.php | 6 +- tests/Unit/Authentication/FactoryTest.php | 1 + .../Authentication/SASLAuthenticationTest.php | 1 + .../Authentication/SSLAuthenticationTest.php | 1 + .../Avro/CachedSchemaRegistryClientTest.php | 13 +- .../Avro/Serializer/MessageDecoderTest.php | 1 + .../Avro/Serializer/MessageEncoderTest.php | 45 +++++-- tests/Unit/Connectors/Consumer/ConfigTest.php | 10 +- .../Unit/Connectors/Consumer/FactoryTest.php | 76 +++++++----- .../Connectors/Consumer/HighLevelTest.php | 1 + .../Unit/Connectors/Consumer/LowLevelTest.php | 1 + .../Unit/Connectors/Consumer/ManagerTest.php | 115 +++++++++++------- tests/Unit/Connectors/Producer/ConfigTest.php | 6 +- .../Connectors/Producer/ConnectorTest.php | 9 +- tests/Unit/Console/ConsumerCommandTest.php | 63 +++++----- .../Unit/Console/ConsumerMakeCommandTest.php | 1 + .../Console/MiddlewareMakeCommandTest.php | 1 + .../Unit/Console/ProducerMakeCommandTest.php | 1 + tests/Unit/ConsumerConfigManagerTest.php | 6 +- tests/Unit/Consumers/HighLevelTest.php | 1 + tests/Unit/Consumers/LowLevelTest.php | 1 + tests/Unit/Consumers/RunnerTest.php | 7 +- tests/Unit/Dummies/ConsumerHandlerDummy.php | 1 + tests/Unit/Dummies/MiddlewareDummy.php | 1 + tests/Unit/Dummies/ProducerHandlerDummy.php | 3 +- .../Dummies/SecondProducerHandlerDummy.php | 3 +- tests/Unit/Facades/MetamorphosisTest.php | 1 + tests/Unit/ManagerTest.php | 1 + .../Unit/Middlewares/Handler/ConsumerTest.php | 1 + .../Middlewares/Handler/DispatcherTest.php | 1 + .../Unit/Middlewares/Handler/IteratorTest.php | 1 + .../Unit/Middlewares/Handler/ProducerTest.php | 33 ++--- tests/Unit/Middlewares/JsonDecodeTest.php | 1 + tests/Unit/Middlewares/LogTest.php | 1 + tests/Unit/Producer/PollTest.php | 1 + tests/Unit/ProducerConfigManagerTest.php | 6 +- tests/Unit/ProducerTest.php | 11 +- tests/Unit/Record/ConsumerRecordTest.php | 5 +- tests/Unit/Record/ProducerRecordTest.php | 1 + .../ConfigOptions/ConsumerTest.php | 1 + .../Factories/AvroSchemaFactoryTest.php | 1 + .../Factories/BrokerFactoryTest.php | 1 + .../Factories/ConsumerFactoryTest.php | 7 +- .../Factories/ProducerFactoryTest.php | 7 +- .../ConfigOptions/ProducerTest.php | 1 + .../Consumer/AbstractHandlerTest.php | 7 +- .../Producer/AbstractHandlerTest.php | 5 +- 140 files changed, 904 insertions(+), 710 deletions(-) diff --git a/config/kafka.php b/config/kafka.php index 60865f73..91ae1500 100644 --- a/config/kafka.php +++ b/config/kafka.php @@ -23,8 +23,10 @@ 'request_options' => [ 'headers' => [ 'Authorization' => [ - 'Basic '.base64_encode( - env('AVRO_SCHEMA_USERNAME').':'.env('AVRO_SCHEMA_PASSWORD') + 'Basic ' . base64_encode( + env('AVRO_SCHEMA_USERNAME') + . ':' + . env('AVRO_SCHEMA_PASSWORD') ), ], ], diff --git a/phpcs.xml b/phpcs.xml index d615f1ad..0657ac17 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -20,4 +20,7 @@ config + + tests/*/Dummies/*.php + diff --git a/src/AbstractConfigManager.php b/src/AbstractConfigManager.php index 5f9858d2..d765b727 100644 --- a/src/AbstractConfigManager.php +++ b/src/AbstractConfigManager.php @@ -1,4 +1,5 @@ */ - protected $setting = []; + protected array $setting = []; /** - * @var array + * @var array */ - protected $middlewares = []; + protected array $middlewares = []; abstract public function set(array $config, ?array $commandConfig = null): void; @@ -22,7 +23,7 @@ abstract public function set(array $config, ?array $commandConfig = null): void; * * @return mixed */ - public function get(string $key = null, $default = null) + public function get(?string $key = null, $default = null) { if (!$key) { return $this->setting; diff --git a/src/Authentication/AuthenticationInterface.php b/src/Authentication/AuthenticationInterface.php index 5e02d3db..8ac02836 100644 --- a/src/Authentication/AuthenticationInterface.php +++ b/src/Authentication/AuthenticationInterface.php @@ -1,4 +1,5 @@ conf->set('security.protocol', $this->configManager->get('auth.type')); + $this->conf->set( + 'security.protocol', + $this->configManager->get('auth.type') + ); // The mechanisms key is optional when configuring this kind of authentication // If the user does not specify the mechanism, the default will be 'PLAIN'. // But, to make config more clear, we are asking the user every time. - $this->conf->set('sasl.mechanisms', $this->configManager->get('auth.mechanisms')); - $this->conf->set('sasl.username', $this->configManager->get('auth.username')); - $this->conf->set('sasl.password', $this->configManager->get('auth.password')); + $this->conf->set( + 'sasl.mechanisms', + $this->configManager->get('auth.mechanisms') + ); + $this->conf->set( + 'sasl.username', + $this->configManager->get('auth.username') + ); + $this->conf->set( + 'sasl.password', + $this->configManager->get('auth.password') + ); } } diff --git a/src/Authentication/SSLAuthentication.php b/src/Authentication/SSLAuthentication.php index 403ed652..246ab5e7 100644 --- a/src/Authentication/SSLAuthentication.php +++ b/src/Authentication/SSLAuthentication.php @@ -1,4 +1,5 @@ conf->set('security.protocol', $this->configManager->get('auth.type')); - $this->conf->set('ssl.ca.location', $this->configManager->get('auth.ca')); - $this->conf->set('ssl.certificate.location', $this->configManager->get('auth.certificate')); - $this->conf->set('ssl.key.location', $this->configManager->get('auth.key')); + $this->conf->set( + 'security.protocol', + $this->configManager->get('auth.type') + ); + $this->conf->set( + 'ssl.ca.location', + $this->configManager->get('auth.ca') + ); + $this->conf->set( + 'ssl.certificate.location', + $this->configManager->get('auth.certificate') + ); + $this->conf->set( + 'ssl.key.location', + $this->configManager->get('auth.key') + ); } } diff --git a/src/Avro/CachedSchemaRegistryClient.php b/src/Avro/CachedSchemaRegistryClient.php index 834af9e1..c91e643c 100644 --- a/src/Avro/CachedSchemaRegistryClient.php +++ b/src/Avro/CachedSchemaRegistryClient.php @@ -1,4 +1,5 @@ = 200 && $status < 300)) { - throw new RuntimeException('Unable to get schema for the specific ID: '.$status); + } + + if (!($status >= 200 && $status < 300)) { + throw new RuntimeException( + 'Unable to get schema for the specific ID: ' . $status + ); } $schema = $schema->parse($response['schema'], $schemaId); @@ -76,12 +78,21 @@ public function getBySubjectAndVersion($subject, $version): Schema if (404 === $status) { throw new RuntimeException('Schema not found'); - } elseif (!($status >= 200 && $status < 300)) { - throw new RuntimeException('Unable to get schema for the specific ID: '.$status); + } + + if (!($status >= 200 && $status < 300)) { + throw new RuntimeException( + 'Unable to get schema for the specific ID: ' . $status + ); } $schemaId = $response['id']; - $schema = $schema->parse($response['schema'], $schemaId, $subject, $version); + $schema = $schema->parse( + $response['schema'], + $schemaId, + $subject, + $version + ); $this->cacheSchema($schema); diff --git a/src/Avro/Client.php b/src/Avro/Client.php index f8406302..e0b714ac 100644 --- a/src/Avro/Client.php +++ b/src/Avro/Client.php @@ -1,4 +1,5 @@ getStatusCode(), json_decode($response->getBody(), true)]; + return [$response->getStatusCode(), json_decode( + $response->getBody(), + true + ), + ]; } private function getContentTypeForPostRequest(): array diff --git a/src/Avro/ClientFactory.php b/src/Avro/ClientFactory.php index b193ea15..0e537e4c 100644 --- a/src/Avro/ClientFactory.php +++ b/src/Avro/ClientFactory.php @@ -1,4 +1,5 @@ string Schema Decoder Class] + * @var array [int Magic Byte => string Schema Decoder Class] */ - private $decoders = [ + private array $decoders = [ SchemaFormats::MAGIC_BYTE_SCHEMAID => SchemaId::class, SchemaFormats::MAGIC_BYTE_SUBJECT_VERSION => SchemaSubjectAndVersion::class, ]; - /** - * @var CachedSchemaRegistryClient - */ - private $registry; + private CachedSchemaRegistryClient $registry; public function __construct(CachedSchemaRegistryClient $registry) { diff --git a/src/Avro/Serializer/MessageEncoder.php b/src/Avro/Serializer/MessageEncoder.php index 15c09c8d..5db2e03e 100644 --- a/src/Avro/Serializer/MessageEncoder.php +++ b/src/Avro/Serializer/MessageEncoder.php @@ -1,4 +1,5 @@ string Schema Decoder Class] + * @var array [int Magic Byte => string Schema Decoder Class] */ - private $encoders = [ + private array $encoders = [ SchemaFormats::MAGIC_BYTE_SCHEMAID => SchemaId::class, SchemaFormats::MAGIC_BYTE_SUBJECT_VERSION => SchemaSubjectAndVersion::class, ]; - /** - * @var CachedSchemaRegistryClient - */ - private $registry; + private CachedSchemaRegistryClient $registry; - /** - * @var bool - */ - private $registerMissingSchemas; + private bool $registerMissingSchemas; - /** - * @var int - */ - private $defaultEncodingFormat; + private int $defaultEncodingFormat; public function __construct(CachedSchemaRegistryClient $registry, array $options = []) { @@ -60,10 +52,10 @@ public function encodeMessage( Schema $schema, $message, bool $isKey = false, - int $format = null + ?int $format = null ): string { $suffix = $isKey ? '-key' : '-value'; - $subject = $topic.$suffix; + $subject = $topic . $suffix; $format = $format ?? $this->defaultEncodingFormat; $encoder = $this->getEncoder($format); @@ -74,7 +66,7 @@ public function encodeMessage( private function getEncoder(int $format): EncoderInterface { if (!$class = $this->encoders[$format] ?? null) { - throw new RuntimeException('Unsuported format: '.$format); + throw new RuntimeException('Unsuported format: ' . $format); } return app($class, ['registry' => $this->registry]); diff --git a/src/Avro/Serializer/SchemaFormats.php b/src/Avro/Serializer/SchemaFormats.php index 7bd2601f..65234021 100644 --- a/src/Avro/Serializer/SchemaFormats.php +++ b/src/Avro/Serializer/SchemaFormats.php @@ -1,4 +1,5 @@ */ - protected $rules = [ + protected array $rules = [ 'topic' => 'required', 'broker' => 'required', 'offset_reset' => 'required', // latest, earliest, none @@ -42,10 +43,22 @@ public function make(array $options, array $arguments): AbstractConfigManager { $configName = $options['config_name'] ?? 'kafka'; $topicConfig = $this->getTopicConfig($configName, $arguments['topic']); - $consumerConfig = $this->getConsumerConfig($topicConfig, $arguments['consumer_group']); - $brokerConfig = $this->getBrokerConfig($configName, $topicConfig['broker']); - $schemaConfig = $this->getSchemaConfig($configName, $arguments['topic']); - $override = array_merge($this->filterValues($options), $this->filterValues($arguments)); + $consumerConfig = $this->getConsumerConfig( + $topicConfig, + $arguments['consumer_group'] + ); + $brokerConfig = $this->getBrokerConfig( + $configName, + $topicConfig['broker'] + ); + $schemaConfig = $this->getSchemaConfig( + $configName, + $arguments['topic'] + ); + $override = array_merge( + $this->filterValues($options), + $this->filterValues($arguments) + ); $config = array_merge( $topicConfig, $brokerConfig, @@ -60,22 +73,34 @@ public function make(array $options, array $arguments): AbstractConfigManager return $configManager; } + /** + * @psalm-suppress InvalidReturnStatement + */ private function getTopicConfig(string $configName, string $topicId): array { - $topicConfig = config($configName.'.topics.'.$topicId); + $topicConfig = config($configName . '.topics.' . $topicId); if (!$topicConfig) { throw new ConfigurationException("Topic '{$topicId}' not found"); } - $topicConfig['middlewares'] = $this->getMiddlewares($configName, $topicConfig); + $topicConfig['middlewares'] = $this->getMiddlewares( + $configName, + $topicConfig + ); return $topicConfig; } - private function getConsumerConfig(array $topicConfig, string $consumerGroupId = null): array + private function getConsumerConfig(array $topicConfig, ?string $consumerGroupId = null): array { - if (!$consumerGroupId && 1 === count($topicConfig['consumer']['consumer_groups'])) { - $consumerGroupId = current(array_keys($topicConfig['consumer']['consumer_groups'])); + if ( + !$consumerGroupId && 1 === count( + $topicConfig['consumer']['consumer_groups'] + ) + ) { + $consumerGroupId = current( + array_keys($topicConfig['consumer']['consumer_groups']) + ); } $consumerGroupId = $consumerGroupId ?? 'default'; @@ -83,7 +108,9 @@ private function getConsumerConfig(array $topicConfig, string $consumerGroupId = $consumerConfig['consumer_group'] = $consumerGroupId; if (!$consumerConfig) { - throw new ConfigurationException("Consumer group '{$consumerGroupId}' not found"); + throw new ConfigurationException( + "Consumer group '{$consumerGroupId}' not found" + ); } return $consumerConfig; @@ -92,7 +119,7 @@ private function getConsumerConfig(array $topicConfig, string $consumerGroupId = private function getMiddlewares(string $configName, array $topicConfig): array { return array_merge( - config($configName.'.middlewares.consumer', []), + config($configName . '.middlewares.consumer', []), $topicConfig['consumer']['middlewares'] ?? [] ); } diff --git a/src/Connectors/Consumer/ConnectorInterface.php b/src/Connectors/Consumer/ConnectorInterface.php index a3cecdd5..3163fca6 100644 --- a/src/Connectors/Consumer/ConnectorInterface.php +++ b/src/Connectors/Consumer/ConnectorInterface.php @@ -1,4 +1,5 @@ get('handler')); - $dispatcher = self::getMiddlewareDispatcher($configManager->middlewares()); - - return new Manager($consumer, $handler, $dispatcher, $autoCommit, $commitAsync); - } - - protected static function requiresPartition(AbstractConfigManager $configManager): bool - { - $partition = $configManager->get('partition'); - - return !is_null($partition) && $partition >= 0; + $dispatcher = self::getMiddlewareDispatcher( + $configManager->middlewares() + ); + + return new Manager( + $consumer, + $handler, + $dispatcher, + $autoCommit, + $commitAsync + ); } public static function getConsumer(bool $autoCommit, AbstractConfigManager $configManager): ConsumerInterface { if (self::requiresPartition($configManager)) { - return app(LowLevel::class)->getConsumer($autoCommit, $configManager); + return app(LowLevel::class)->getConsumer( + $autoCommit, + $configManager + ); } return app(HighLevel::class)->getConsumer($autoCommit, $configManager); } + protected static function requiresPartition(AbstractConfigManager $configManager): bool + { + $partition = $configManager->get('partition'); + + return !is_null($partition) && $partition >= 0; + } + private static function getMiddlewareDispatcher(array $middlewares): Dispatcher { return new Dispatcher($middlewares); diff --git a/src/Connectors/Consumer/HighLevel.php b/src/Connectors/Consumer/HighLevel.php index 7d99b3cf..7a61a171 100644 --- a/src/Connectors/Consumer/HighLevel.php +++ b/src/Connectors/Consumer/HighLevel.php @@ -1,4 +1,5 @@ addBrokers($configManager->get('connections')); $topicConf = $this->getTopicConfigs($configManager); - $topicConsumer = $consumer->newTopic($configManager->get('topic_id'), $topicConf); + $topicConsumer = $consumer->newTopic( + $configManager->get('topic_id'), + $topicConf + ); - $topicConsumer->consumeStart($configManager->get('partition'), $configManager->get('offset')); + $topicConsumer->consumeStart( + $configManager->get('partition'), + $configManager->get('offset') + ); return new LowLevelConsumer($topicConsumer, $configManager); } @@ -39,7 +46,10 @@ protected function getTopicConfigs(AbstractConfigManager $configManager) // Set where to start consuming messages when there is no initial offset in // offset store or the desired offset is out of range. // 'smallest': start from the beginning - $topicConfig->set('auto.offset.reset', $configManager->get('offset_reset')); + $topicConfig->set( + 'auto.offset.reset', + $configManager->get('offset_reset') + ); return $topicConfig; } diff --git a/src/Connectors/Consumer/Manager.php b/src/Connectors/Consumer/Manager.php index cc1b0de0..118b4bba 100644 --- a/src/Connectors/Consumer/Manager.php +++ b/src/Connectors/Consumer/Manager.php @@ -1,4 +1,5 @@ consumerHandler->warning($exception); + return; } catch (Exception $exception) { $this->consumerHandler->failed($exception); + return; } @@ -95,6 +80,7 @@ private function commit(): void if ($this->commitAsync) { $this->consumer->commitAsync(); + return; } diff --git a/src/Connectors/Producer/Config.php b/src/Connectors/Producer/Config.php index 0b6635a6..90a9cd1d 100644 --- a/src/Connectors/Producer/Config.php +++ b/src/Connectors/Producer/Config.php @@ -1,4 +1,5 @@ 'required', 'connections' => 'required|string', 'timeout' => 'int', @@ -26,9 +27,9 @@ class Config extends AbstractConfig ]; /** - * @var array + * @var mixed[] */ - protected $default = [ + protected array $default = [ 'timeout' => 1000, 'is_async' => true, 'required_acknowledgment' => true, @@ -53,7 +54,10 @@ public function makeByTopic(string $topicId): AbstractConfigManager config('kafka.middlewares.producer', []), $topicConfig['producer']['middlewares'] ?? [] ); - $brokerConfig = $this->getBrokerConfig('kafka', $topicConfig['broker']); + $brokerConfig = $this->getBrokerConfig( + 'kafka', + $topicConfig['broker'] + ); $schemaConfig = $this->getSchemaConfig('kafka', $topicId); $config = array_merge($topicConfig, $brokerConfig, $schemaConfig); @@ -69,8 +73,8 @@ public function makeByTopic(string $topicId): AbstractConfigManager private function getTopicConfig(string $topicId): array { $topicConfig = array_merge( - config('kafka.topics.'.$topicId, []), - config('kafka.topics.'.$topicId.'.producer', []) + config('kafka.topics.' . $topicId, []), + config('kafka.topics.' . $topicId . '.producer', []) ); if (!$topicConfig) { throw new ConfigurationException("Topic '{$topicId}' not found"); diff --git a/src/Connectors/Producer/Connector.php b/src/Connectors/Producer/Connector.php index 0b0b6dcd..ebe696ea 100644 --- a/src/Connectors/Producer/Connector.php +++ b/src/Connectors/Producer/Connector.php @@ -1,4 +1,5 @@ canHandleResponse($handler)) { - $conf->setDrMsgCb(function ($kafka, Message $message) use ($handler) { - if ($message->err) { - $handler->failed($message); - } else { - $handler->success($message); + $conf->setDrMsgCb( + /** @phpcsSuppress SlevomatCodingStandard.Functions.UnusedParameter.UnusedParameter */ + function ($kafka, Message $message) use ($handler) { + if ($message->err) { + $handler->failed($message); + } else { + $handler->success($message); + } } - }); + ); } $conf->set('metadata.broker.list', $configManager->get('connections')); diff --git a/src/Console/ConsumerCommand.php b/src/Console/ConsumerCommand.php index 6af23ac1..c4bdab76 100644 --- a/src/Console/ConsumerCommand.php +++ b/src/Console/ConsumerCommand.php @@ -1,4 +1,5 @@ get('topic').PHP_EOL; - $text .= ' on consumer group: '.$configManager->get('consumer_group').PHP_EOL; - $text .= 'Connecting in '.$configManager->get('connections').PHP_EOL; + $text = 'Starting consumer for topic: ' . $configManager->get( + 'topic' + ) . PHP_EOL; + $text .= ' on consumer group: ' . $configManager->get( + 'consumer_group' + ) . PHP_EOL; + $text .= 'Connecting in ' . $configManager->get( + 'connections' + ) . PHP_EOL; $text .= 'Running consumer..'; $this->output->writeln($text); diff --git a/src/Console/ConsumerMakeCommand.php b/src/Console/ConsumerMakeCommand.php index a77554f0..23008f21 100644 --- a/src/Console/ConsumerMakeCommand.php +++ b/src/Console/ConsumerMakeCommand.php @@ -1,4 +1,5 @@ remove('middlewares'); foreach ($middlewares as $middleware) { - $this->middlewares[] = is_string($middleware) ? app($middleware, ['configManager' => $this]) : $middleware; + $this->middlewares[] = is_string($middleware) + ? app( + $middleware, + ['configManager' => $this] + ) + : $middleware; } if (!$consumerHandler) { diff --git a/src/Consumers/ConsumerInterface.php b/src/Consumers/ConsumerInterface.php index 425def13..ee59cd0b 100644 --- a/src/Consumers/ConsumerInterface.php +++ b/src/Consumers/ConsumerInterface.php @@ -1,4 +1,5 @@ manager = $manager; } - public function run(int $times = null): void + public function run(?int $times = null): void { if ($times) { for ($i = 0; $i < $times; $i++) { diff --git a/src/Exceptions/AuthenticationException.php b/src/Exceptions/AuthenticationException.php index 894a6bc8..78740ce3 100644 --- a/src/Exceptions/AuthenticationException.php +++ b/src/Exceptions/AuthenticationException.php @@ -1,4 +1,5 @@ publishes([ - __DIR__.'/../config/kafka.php' => config_path('kafka.php'), + __DIR__ . '/../config/kafka.php' => config_path('kafka.php'), ], 'config'); - $this->mergeConfigFrom(__DIR__.'/../config/kafka.php', 'kafka'); + $this->mergeConfigFrom(__DIR__ . '/../config/kafka.php', 'kafka'); } public function register() diff --git a/src/Middlewares/AvroSchemaDecoder.php b/src/Middlewares/AvroSchemaDecoder.php index 5d7f9f9c..778d72ed 100644 --- a/src/Middlewares/AvroSchemaDecoder.php +++ b/src/Middlewares/AvroSchemaDecoder.php @@ -1,4 +1,5 @@ configManager = $configManager; if (!$this->configManager->get('url')) { - throw new ConfigurationException("Avro schema url not found, it's required to use AvroSchemaDecoder Middleware"); + throw new ConfigurationException( + "Avro schema url not found, it's required to use AvroSchemaDecoder Middleware" + ); } $this->decoder = new MessageDecoder($factory->make($configManager)); @@ -33,7 +30,9 @@ public function __construct(AbstractConfigManager $configManager, ClientFactory public function process(RecordInterface $record, Closure $next) { - $record->setPayload($this->decoder->decodeMessage($record->getPayload())); + $record->setPayload( + $this->decoder->decodeMessage($record->getPayload()) + ); return $next($record); } diff --git a/src/Middlewares/AvroSchemaMixedEncoder.php b/src/Middlewares/AvroSchemaMixedEncoder.php index f73de303..4df0beb7 100644 --- a/src/Middlewares/AvroSchemaMixedEncoder.php +++ b/src/Middlewares/AvroSchemaMixedEncoder.php @@ -1,4 +1,5 @@ get('url')) { - throw new ConfigurationException("Avro schema url not found, it's required to use AvroSchemaEncoder Middleware"); + throw new ConfigurationException( + "Avro schema url not found, it's required to use AvroSchemaEncoder Middleware" + ); } $schemaRegistry = $factory->make($configManager); @@ -46,10 +40,16 @@ public function __construct(SchemaId $schemaIdEncoder, ClientFactory $factory, A public function process(RecordInterface $record, Closure $next) { $topic = $this->configManager->get('topic_id'); - $schema = $this->schemaRegistry->getBySubjectAndVersion("{$topic}-value", 'latest'); + $schema = $this->schemaRegistry->getBySubjectAndVersion( + "{$topic}-value", + 'latest' + ); $arrayPayload = json_decode($record->getPayload(), true); - $encodedPayload = $this->schemaIdEncoder->encode($schema, $arrayPayload); + $encodedPayload = $this->schemaIdEncoder->encode( + $schema, + $arrayPayload + ); $record->setPayload($encodedPayload); diff --git a/src/Middlewares/Handler/AbstractMiddlewareHandler.php b/src/Middlewares/Handler/AbstractMiddlewareHandler.php index 083b042d..43681dc3 100644 --- a/src/Middlewares/Handler/AbstractMiddlewareHandler.php +++ b/src/Middlewares/Handler/AbstractMiddlewareHandler.php @@ -1,4 +1,5 @@ */ - protected $queue; - - public function __construct(iterable $queue) - { - $this->queue = $queue; - } + protected iterable $queue; /** * Handles the current entry in the middleware queue and advances. */ abstract public function handle(RecordInterface $record); + + public function __construct(iterable $queue) + { + $this->queue = $queue; + } } diff --git a/src/Middlewares/Handler/Consumer.php b/src/Middlewares/Handler/Consumer.php index dedb5b97..ef81d3ec 100644 --- a/src/Middlewares/Handler/Consumer.php +++ b/src/Middlewares/Handler/Consumer.php @@ -1,4 +1,5 @@ consumerTopicHandler = $consumerTopicHandler; } + /** + * @phpcsSuppress SlevomatCodingStandard.Functions.UnusedParameter.UnusedParameter + * @return mixed + */ public function process(RecordInterface $record, Closure $next) { $this->consumerTopicHandler->handle($record); diff --git a/src/Middlewares/Handler/Dispatcher.php b/src/Middlewares/Handler/Dispatcher.php index 25bbc7bc..991211ff 100644 --- a/src/Middlewares/Handler/Dispatcher.php +++ b/src/Middlewares/Handler/Dispatcher.php @@ -1,4 +1,5 @@ partition = $partition; } - public function process(RecordInterface $record, Closure $next): void + public function __destruct() { - $this->topic->produce($this->getPartition($record), 0, $record->getPayload(), $record->getKey()); - - $this->poll->handleResponse(); + $this->poll->flushMessage(); } - public function __destruct() + /** + * @phpcsSuppress SlevomatCodingStandard.Functions.UnusedParameter.UnusedParameter + */ + public function process(RecordInterface $record, Closure $next): void { - $this->poll->flushMessage(); + $this->topic->produce( + $this->getPartition($record), + 0, + $record->getPayload(), + $record->getKey() + ); + + $this->poll->handleResponse(); } public function getPartition(RecordInterface $record): int { - return is_null($record->getPartition()) ? $this->partition : $record->getPartition(); + return is_null( + $record->getPartition() + ) + ? $this->partition + : $record->getPartition(); } } diff --git a/src/Middlewares/JsonDecode.php b/src/Middlewares/JsonDecode.php index 1258064a..15bce984 100644 --- a/src/Middlewares/JsonDecode.php +++ b/src/Middlewares/JsonDecode.php @@ -1,4 +1,5 @@ log->info('Processing kafka record: '.$record->getPayload(), [ - 'original' => (array) $record->getOriginal(), - ]); + $this->log->info( + 'Processing kafka record: ' . $record->getPayload(), + [ + 'original' => (array) $record->getOriginal(), + ] + ); return $next($record); } diff --git a/src/Middlewares/MiddlewareInterface.php b/src/Middlewares/MiddlewareInterface.php index 6c2ba78e..12e63d88 100644 --- a/src/Middlewares/MiddlewareInterface.php +++ b/src/Middlewares/MiddlewareInterface.php @@ -1,4 +1,5 @@ connector = $connector; } - /** - * @throws JsonException When an array is passed and something wrong happens while encoding it into json - */ public function produce(HandlerInterface $producerHandler): void { $middlewareDispatcher = $this->build($producerHandler); @@ -43,20 +34,34 @@ public function build(HandlerInterface $producerHandler): Dispatcher $configManager = $this->getConfigManager($producerHandler); $middlewares = $configManager->middlewares(); - $middlewares[] = $this->getProducerMiddleware($producerHandler, $configManager); + $middlewares[] = $this->getProducerMiddleware( + $producerHandler, + $configManager + ); return new Dispatcher($middlewares); } - public function getProducerMiddleware(HandlerInterface $producerHandler, AbstractConfigManager $configManager): ProducerMiddleware - { - $producer = $this->connector->getProducerTopic($producerHandler, $configManager); + public function getProducerMiddleware( + HandlerInterface $producerHandler, + AbstractConfigManager $configManager + ): ProducerMiddleware { + $producer = $this->connector->getProducerTopic( + $producerHandler, + $configManager + ); $topic = $producer->newTopic($configManager->get('topic_id')); - $poll = app(Poll::class, ['producer' => $producer, 'configManager' => $configManager]); + $poll = app( + Poll::class, + ['producer' => $producer, 'configManager' => $configManager] + ); $partition = $configManager->get('partition'); - return app(ProducerMiddleware::class, compact('topic', 'poll', 'partition')); + return app( + ProducerMiddleware::class, + compact('topic', 'poll', 'partition') + ); } private function getConfigManager(HandlerInterface $producerHandler): AbstractConfigManager diff --git a/src/Producer/Poll.php b/src/Producer/Poll.php index 03925d5b..8a34de8c 100644 --- a/src/Producer/Poll.php +++ b/src/Producer/Poll.php @@ -1,4 +1,5 @@ isAsync = $configManager->get('is_async'); $this->maxPollRecords = $configManager->get('max_poll_records'); - $this->requiredAcknowledgment = $configManager->get('required_acknowledgment'); + $this->requiredAcknowledgment = $configManager->get( + 'required_acknowledgment' + ); $this->maxFlushAttempts = $configManager->get('flush_attempts'); $this->timeout = $configManager->get('timeout'); diff --git a/src/ProducerConfigManager.php b/src/ProducerConfigManager.php index 3fe183cc..59f3b35a 100644 --- a/src/ProducerConfigManager.php +++ b/src/ProducerConfigManager.php @@ -1,8 +1,12 @@ setting = $config; @@ -12,7 +16,12 @@ public function set(array $config, ?array $commandConfig = null): void $this->remove('middlewares'); foreach ($middlewares as $middleware) { - $this->middlewares[] = is_string($middleware) ? app($middleware, ['configManager' => $this]) : $middleware; + $this->middlewares[] = is_string($middleware) + ? app( + $middleware, + ['configManager' => $this] + ) + : $middleware; } } } diff --git a/src/Record/ConsumerRecord.php b/src/Record/ConsumerRecord.php index 458ada0b..bdc2f342 100644 --- a/src/Record/ConsumerRecord.php +++ b/src/Record/ConsumerRecord.php @@ -1,4 +1,5 @@ original = $response; @@ -116,20 +111,20 @@ private function throwResponseErrorException(): void { if (RD_KAFKA_RESP_ERR__TIMED_OUT === $this->original->err) { throw new ResponseTimeoutException( - 'Consumer finished to process or timed out: '.$this->original->errstr(), + 'Consumer finished to process or timed out: ' . $this->original->errstr(), $this->original->err ); } if (in_array($this->original->err, self::KAFKA_ERROR_WHITELIST)) { throw new ResponseWarningException( - 'Invalid response: '.$this->original->errstr(), + 'Invalid response: ' . $this->original->errstr(), $this->original->err ); } throw new ResponseErrorException( - 'Error response: '.$this->original->errstr(), + 'Error response: ' . $this->original->errstr(), $this->original->err ); } diff --git a/src/Record/ProducerRecord.php b/src/Record/ProducerRecord.php index 9eb110a1..44868930 100644 --- a/src/Record/ProducerRecord.php +++ b/src/Record/ProducerRecord.php @@ -1,4 +1,5 @@ payload = $payload; $this->original = $payload; diff --git a/src/Record/RecordInterface.php b/src/Record/RecordInterface.php index c739357e..8cb47e99 100644 --- a/src/Record/RecordInterface.php +++ b/src/Record/RecordInterface.php @@ -1,4 +1,5 @@ */ - private $requestOptions; + private array $requestOptions; public function __construct(string $url, array $requestOptions = [], bool $sslVerify = true) { diff --git a/src/TopicHandler/ConfigOptions/Broker.php b/src/TopicHandler/ConfigOptions/Broker.php index c9d805c9..3c1eb583 100644 --- a/src/TopicHandler/ConfigOptions/Broker.php +++ b/src/TopicHandler/ConfigOptions/Broker.php @@ -1,4 +1,5 @@ */ - private $middlewares; + private array $middlewares; /** * We need to set a timeout when polling the messages. * That means: how long we'll wait a response from poll * - * @var int */ - private $timeout; + private int $timeout; - /** - * @var ?int - */ - private $partition; + private ?int $partition = null; - /** - * @var string - */ - private $topicId; + private string $topicId; - /** - * @var string - */ - private $consumerGroup; + private string $consumerGroup; - /** - * @var string - */ - private $handler; + private string $handler; - /** - * @var bool - */ - private $autoCommit; + private bool $autoCommit; - /** - * @var bool - */ - private $commitASync; + private bool $commitASync; - /** - * @var string - */ - private $offsetReset; + private string $offsetReset; - /** - * @var int|null - */ - private $offset; + private ?int $offset = null; public function __construct( string $topicId, diff --git a/src/TopicHandler/ConfigOptions/Factories/AuthFactory.php b/src/TopicHandler/ConfigOptions/Factories/AuthFactory.php index 065e6b31..16b6a295 100644 --- a/src/TopicHandler/ConfigOptions/Factories/AuthFactory.php +++ b/src/TopicHandler/ConfigOptions/Factories/AuthFactory.php @@ -1,4 +1,5 @@ */ - private $middlewares; + private array $middlewares; /** * Sets to true if you want to know if a message was successfully posted. * - * @var bool */ - private $requiredAcknowledgment; + private bool $requiredAcknowledgment; /** * We need to set a timeout when polling the messages. * That means: how long we'll wait a response from poll * - * @var int */ - private $timeout; + private int $timeout; - /** - * @var string - */ - private $topicId; + private string $topicId; - /** - * @var int|null - */ - private $partition; + private ?int $partition = null; public function __construct( string $topicId, diff --git a/src/TopicHandler/Consumer/AbstractHandler.php b/src/TopicHandler/Consumer/AbstractHandler.php index 73ad2307..4a9cee30 100644 --- a/src/TopicHandler/Consumer/AbstractHandler.php +++ b/src/TopicHandler/Consumer/AbstractHandler.php @@ -1,4 +1,5 @@ configOptions = $configOptions; } + /** + * @phpcsSuppress SlevomatCodingStandard.Functions.UnusedParameter.UnusedParameter + */ public function warning(ResponseWarningException $exception): void { } + /** + * @phpcsSuppress SlevomatCodingStandard.Functions.UnusedParameter.UnusedParameter + */ public function failed(Exception $exception): void { } diff --git a/src/TopicHandler/Consumer/Handler.php b/src/TopicHandler/Consumer/Handler.php index e24a22c0..0b7f1368 100644 --- a/src/TopicHandler/Consumer/Handler.php +++ b/src/TopicHandler/Consumer/Handler.php @@ -1,4 +1,5 @@ record = $record; $this->topic = $topic; @@ -77,7 +70,9 @@ private function encodeRecord(array $record): string $record = json_encode($record, JSON_PRESERVE_ZERO_FRACTION); if (JSON_ERROR_NONE !== json_last_error()) { - throw new JsonException('Cannot convert data into a valid JSON. Reason: '.json_last_error_msg()); + throw new JsonException( + 'Cannot convert data into a valid JSON. Reason: ' . json_last_error_msg() + ); } return $record; diff --git a/src/TopicHandler/Producer/AbstractProducer.php b/src/TopicHandler/Producer/AbstractProducer.php index 6fde4472..68551118 100644 --- a/src/TopicHandler/Producer/AbstractProducer.php +++ b/src/TopicHandler/Producer/AbstractProducer.php @@ -1,4 +1,5 @@ record = $record; $this->key = $key; @@ -64,7 +60,9 @@ private function encodeRecord(array $record): string $record = json_encode($record, JSON_PRESERVE_ZERO_FRACTION); if (JSON_ERROR_NONE !== json_last_error()) { - throw new JsonException('Cannot convert data into a valid JSON. Reason: '.json_last_error_msg()); + throw new JsonException( + 'Cannot convert data into a valid JSON. Reason: ' . json_last_error_msg() + ); } return $record; diff --git a/src/TopicHandler/Producer/HandleableResponseInterface.php b/src/TopicHandler/Producer/HandleableResponseInterface.php index 14a17a10..d91cb5e3 100644 --- a/src/TopicHandler/Producer/HandleableResponseInterface.php +++ b/src/TopicHandler/Producer/HandleableResponseInterface.php @@ -1,4 +1,5 @@ handle($messageProducer->createRecord()); - $consumer = $this->app->make(Consumer::class, ['configOptions' => $consumerConfigOptions]); + $consumer = $this->app->make( + Consumer::class, + ['configOptions' => $consumerConfigOptions] + ); $expected = ['id' => 'MESSAGE_ID']; // Actions diff --git a/tests/Integration/Dummies/MessageConsumer.php b/tests/Integration/Dummies/MessageConsumer.php index f3c6be20..9b2c5cc7 100644 --- a/tests/Integration/Dummies/MessageConsumer.php +++ b/tests/Integration/Dummies/MessageConsumer.php @@ -1,4 +1,5 @@ record = $record; $this->topic = $topic ?? 'default'; diff --git a/tests/Integration/Dummies/MessageProducerWithConfigOptions.php b/tests/Integration/Dummies/MessageProducerWithConfigOptions.php index c00152c5..7f97e509 100644 --- a/tests/Integration/Dummies/MessageProducerWithConfigOptions.php +++ b/tests/Integration/Dummies/MessageProducerWithConfigOptions.php @@ -1,4 +1,5 @@ withoutAuthentication(); - } + protected string $secondLowLevelMessage; public function testShouldRunAProducerAndReceiveMessagesWithAHighLevelConsumer(): void { @@ -59,6 +45,13 @@ public function testShouldRunAProducerAndReceiveMessagesWithALowLevelConsumer(): $this->runTheLowLevelConsumerSkippingTheFirstTwoMessagesAndLimitingToTwoMessagesConsumed(); } + protected function setUp(): void + { + parent::setUp(); + + $this->withoutAuthentication(); + } + protected function withoutAuthentication(): void { config(['kafka.brokers.default.auth' => []]); @@ -66,7 +59,9 @@ protected function withoutAuthentication(): void protected function haveAConsumerHandlerConfigured(): void { - config(['kafka.topics.default.consumer.consumer_groups.test-consumer-group.handler' => MessageConsumer::class]); + config( + ['kafka.topics.default.consumer.consumer_groups.test-consumer-group.handler' => MessageConsumer::class] + ); } protected function runTheConsumer(): void @@ -133,7 +128,10 @@ protected function runTheLowLevelConsumerSkippingTheFirstTwoMessagesAndLimitingT private function haveSomeRandomMessagesProduced(): void { $this->highLevelMessage = Str::random(10); - $producer = app(MessageProducer::class, ['record' => $this->highLevelMessage]); + $producer = app( + MessageProducer::class, + ['record' => $this->highLevelMessage] + ); Metamorphosis::produce($producer); Metamorphosis::produce($producer); diff --git a/tests/Integration/ProducerWithAvroTest.php b/tests/Integration/ProducerWithAvroTest.php index 5a1aa06c..d76a60b1 100644 --- a/tests/Integration/ProducerWithAvroTest.php +++ b/tests/Integration/ProducerWithAvroTest.php @@ -1,4 +1,5 @@ ['saleOrderId' => 'SALE_ORDER_ID'], 'topic' => 'sale_order']); - $productProducer = app(MessageProducer::class, ['record' => ['productId' => 'PRODUCT_ID'], 'topic' => 'product']); + $saleOrderProducer = app( + MessageProducer::class, + ['record' => ['saleOrderId' => 'SALE_ORDER_ID'], 'topic' => 'sale_order'] + ); + $productProducer = app( + MessageProducer::class, + ['record' => ['productId' => 'PRODUCT_ID'], 'topic' => 'product'] + ); $saleOrderSchemaResponse = '{ "subject":"sale_order-value", diff --git a/tests/Integration/ProducerWithConfigOptionsTest.php b/tests/Integration/ProducerWithConfigOptionsTest.php index 29914915..b5935482 100644 --- a/tests/Integration/ProducerWithConfigOptionsTest.php +++ b/tests/Integration/ProducerWithConfigOptionsTest.php @@ -1,4 +1,5 @@ instance(AbstractHandler::class, m::mock(AbstractHandler::class)); + $handler = $this->instance( + AbstractHandler::class, + m::mock(AbstractHandler::class) + ); $config = [ 'middlewares' => [], 'handler' => AbstractHandler::class, diff --git a/tests/Unit/Authentication/FactoryTest.php b/tests/Unit/Authentication/FactoryTest.php index da153e39..53999f8a 100644 --- a/tests/Unit/Authentication/FactoryTest.php +++ b/tests/Unit/Authentication/FactoryTest.php @@ -1,4 +1,5 @@ expectException(RuntimeException::class); - $this->expectExceptionMessage("Unable to get schema for the specific ID: {$status}"); + $this->expectExceptionMessage( + "Unable to get schema for the specific ID: {$status}" + ); $httpClient->expects() ->get('schemas/ids/123') ->andReturn([$status, $response]); @@ -197,7 +200,9 @@ public function testGetBySubjectAndVersionMayReturnErrors(): void // Expectations $this->expectException(RuntimeException::class); - $this->expectExceptionMessage("Unable to get schema for the specific ID: {$status}"); + $this->expectExceptionMessage( + "Unable to get schema for the specific ID: {$status}" + ); $httpClient->expects() ->get('subjects/some-kafka-topic/versions/1') ->andReturn([$status, $response]); @@ -236,6 +241,8 @@ public function testGetBySubjectAndVersionShouldHitCache(): void private function getSchemaTest(): string { - return file_get_contents(__DIR__.'/../fixtures/schemas/sales_price.avsc'); + return file_get_contents( + __DIR__ . '/../fixtures/schemas/sales_price.avsc' + ); } } diff --git a/tests/Unit/Avro/Serializer/MessageDecoderTest.php b/tests/Unit/Avro/Serializer/MessageDecoderTest.php index c5d13379..dfc41241 100644 --- a/tests/Unit/Avro/Serializer/MessageDecoderTest.php +++ b/tests/Unit/Avro/Serializer/MessageDecoderTest.php @@ -1,4 +1,5 @@ true, 'default_encoding_format' => SchemaFormats::MAGIC_BYTE_SCHEMAID]); + $serializer = new MessageEncoder( + $registry, + ['register_missing_schemas' => true, 'default_encoding_format' => SchemaFormats::MAGIC_BYTE_SCHEMAID] + ); $topic = 'my-topic'; $schema = m::mock(Schema::class); $avroSchema = new AvroSchema('array'); @@ -60,7 +64,13 @@ public function testShouldEncodeRecordWithSchemaIdRegisteringMissingSchemas(): v ->andReturn($avroSchema); // Actions - $result = $serializer->encodeMessage($topic, $schema, $record, true, SchemaFormats::MAGIC_BYTE_SCHEMAID); + $result = $serializer->encodeMessage( + $topic, + $schema, + $record, + true, + SchemaFormats::MAGIC_BYTE_SCHEMAID + ); // Assertions $this->assertSame("\x00\x00\x00\x00\x00\x00", $result); @@ -92,10 +102,19 @@ public function testShouldEncodeRecordWithSubjectAndVersion(): void ->andReturn($avroSchema); // Actions - $result = $serializer->encodeMessage($topic, $schema, $record, false, SchemaFormats::MAGIC_BYTE_SUBJECT_VERSION); + $result = $serializer->encodeMessage( + $topic, + $schema, + $record, + false, + SchemaFormats::MAGIC_BYTE_SUBJECT_VERSION + ); // Assertions - $this->assertSame("\x01\x00\x00\x00\x0Emy-topic-value\x00\x00\x00\x00\x00", $result); + $this->assertSame( + "\x01\x00\x00\x00\x0Emy-topic-value\x00\x00\x00\x00\x00", + $result + ); } public function testShouldNotEncodeRecordWithInvalidFormat(): void @@ -120,7 +139,10 @@ public function testShouldEncodeRecordWithSubjectAndVersionRegisteringMissingSch { // Set $registry = m::mock(CachedSchemaRegistryClient::class); - $serializer = new MessageEncoder($registry, ['register_missing_schemas' => true]); + $serializer = new MessageEncoder( + $registry, + ['register_missing_schemas' => true] + ); $topic = 'my-topic'; $subject = "{$topic}-value"; $schema = m::mock(Schema::class); @@ -142,9 +164,18 @@ public function testShouldEncodeRecordWithSubjectAndVersionRegisteringMissingSch ->andReturn($avroSchema); // Actions - $result = $serializer->encodeMessage($topic, $schema, $record, true, SchemaFormats::MAGIC_BYTE_SUBJECT_VERSION); + $result = $serializer->encodeMessage( + $topic, + $schema, + $record, + true, + SchemaFormats::MAGIC_BYTE_SUBJECT_VERSION + ); // Assertions - $this->assertSame("\x01\x00\x00\x00\x0Emy-topic-value\x00\x00\x00\x00\$my awesome message", $result); + $this->assertSame( + "\x01\x00\x00\x00\x0Emy-topic-value\x00\x00\x00\x00\$my awesome message", + $result + ); } } diff --git a/tests/Unit/Connectors/Consumer/ConfigTest.php b/tests/Unit/Connectors/Consumer/ConfigTest.php index 1fe82e83..9e1c26f9 100644 --- a/tests/Unit/Connectors/Consumer/ConfigTest.php +++ b/tests/Unit/Connectors/Consumer/ConfigTest.php @@ -1,4 +1,5 @@ ConsumerHandlerDummy::class]); - $consumerHandler = $this->instance(ConsumerHandlerDummy::class, m::mock(ConsumerHandlerDummy::class)); + config( + ['kafka.topics.default.consumer.consumer_groups.test-consumer-group.handler' => ConsumerHandlerDummy::class] + ); + $consumerHandler = $this->instance( + ConsumerHandlerDummy::class, + m::mock(ConsumerHandlerDummy::class) + ); $configOptions = m::mock(ConsumerConfigOptions::class); $config = new Config(); diff --git a/tests/Unit/Connectors/Consumer/FactoryTest.php b/tests/Unit/Connectors/Consumer/FactoryTest.php index 2f96f3c6..5c85d776 100644 --- a/tests/Unit/Connectors/Consumer/FactoryTest.php +++ b/tests/Unit/Connectors/Consumer/FactoryTest.php @@ -1,4 +1,5 @@ make( + ['timeout' => 61], + ['topic' => 'topic_key', 'consumer_group' => 'with-partition'] + ); + $manager = Factory::make($configManager); + + // Assertions + $this->assertInstanceOf(LowLevel::class, $manager->getConsumer()); + } + + public function testItMakesManagerWithLowLevelConsumerWhenPartitionIsNotValid(): void + { + // Set + $config = new Config(); + $configManager = $config->make( + ['timeout' => 61], + ['topic' => 'topic_key', 'consumer_group' => 'with-partition', 'partition' => -1] + ); + $manager = Factory::make($configManager); + + // Assertions + $this->assertInstanceOf(HighLevel::class, $manager->getConsumer()); + } + + public function testItMakesHighLevelClass(): void + { + // Set + $config = new Config(); + $configManager = $config->make( + ['timeout' => 61], + ['topic' => 'topic_key', 'consumer_group' => 'without-partition'] + ); + $manager = Factory::make($configManager); + + // Assertions + $this->assertInstanceOf(HighLevel::class, $manager->getConsumer()); + } + protected function setUp(): void { parent::setUp(); @@ -44,37 +87,4 @@ protected function setUp(): void ], ]); } - - public function testItMakesManagerWithLowLevelConsumer(): void - { - // Set - $config = new Config(); - $configManager = $config->make(['timeout' => 61], ['topic' => 'topic_key', 'consumer_group' => 'with-partition']); - $manager = Factory::make($configManager); - - // Assertions - $this->assertInstanceOf(LowLevel::class, $manager->getConsumer()); - } - - public function testItMakesManagerWithLowLevelConsumerWhenPartitionIsNotValid(): void - { - // Set - $config = new Config(); - $configManager = $config->make(['timeout' => 61], ['topic' => 'topic_key', 'consumer_group' => 'with-partition', 'partition' => -1]); - $manager = Factory::make($configManager); - - // Assertions - $this->assertInstanceOf(HighLevel::class, $manager->getConsumer()); - } - - public function testItMakesHighLevelClass(): void - { - // Set - $config = new Config(); - $configManager = $config->make(['timeout' => 61], ['topic' => 'topic_key', 'consumer_group' => 'without-partition']); - $manager = Factory::make($configManager); - - // Assertions - $this->assertInstanceOf(HighLevel::class, $manager->getConsumer()); - } } diff --git a/tests/Unit/Connectors/Consumer/HighLevelTest.php b/tests/Unit/Connectors/Consumer/HighLevelTest.php index b4f40987..1ac5ee83 100644 --- a/tests/Unit/Connectors/Consumer/HighLevelTest.php +++ b/tests/Unit/Connectors/Consumer/HighLevelTest.php @@ -1,4 +1,5 @@ set([ - 'connections' => 'kafka:2019', - 'topic' => 'topic_key', - 'broker' => 'default', - 'offset_reset' => 'earliest', - 'offset' => 0, - 'timeout' => 30, - 'handler' => ConsumerHandlerDummy::class, - 'middlewares' => [], - 'consumer_group' => 'consumer-id', - ]); - } - public function testShouldHandleMultiplesMessages(): void { // Set - $consumerRecord = $this->instance(ConsumerRecord::class, m::mock(ConsumerRecord::class)); + $consumerRecord = $this->instance( + ConsumerRecord::class, + m::mock(ConsumerRecord::class) + ); $consumer = m::mock(ConsumerInterface::class); $consumerHandler = m::mock(ConsumerHandler::class); $dispatcher = m::mock(Dispatcher::class); - $runner = new Manager($consumer, $consumerHandler, $dispatcher, true, false); + $runner = new Manager( + $consumer, + $consumerHandler, + $dispatcher, + true, + false + ); $kafkaMessage1 = new KafkaMessage(); $kafkaMessage1->payload = 'original message 1'; @@ -65,15 +57,17 @@ public function testShouldHandleMultiplesMessages(): void // Expectations $consumer->shouldReceive('consume') ->times(4) - ->andReturnUsing(function () use ($messages, &$count, $exception) { - $message = $messages[$count] ?? null; - if (!$message) { - throw $exception; + ->andReturnUsing( + function () use ($messages, &$count, $exception) { + $message = $messages[$count] ?? null; + if (!$message) { + throw $exception; + } + $count++; + + return $message; } - $count++; - - return $message; - }); + ); $consumerHandler->expects() ->failed($exception); @@ -96,9 +90,17 @@ public function testShouldCallWarningWhenErrorOccurs(): void $consumerHandler = m::mock(ConsumerHandler::class); $dispatcher = m::mock(Dispatcher::class); - $runner = new Manager($consumer, $consumerHandler, $dispatcher, true, false); + $runner = new Manager( + $consumer, + $consumerHandler, + $dispatcher, + true, + false + ); - $exception = new ResponseWarningException('Error occurs when consuming.'); + $exception = new ResponseWarningException( + 'Error occurs when consuming.' + ); // Expectations $consumer->shouldReceive('consume') @@ -117,13 +119,22 @@ public function testShouldCallWarningWhenErrorOccurs(): void public function testShouldHandleAsyncCommit(): void { // Set - $consumerRecord = $this->instance(ConsumerRecord::class, m::mock(ConsumerRecord::class)); + $consumerRecord = $this->instance( + ConsumerRecord::class, + m::mock(ConsumerRecord::class) + ); $consumer = m::mock(ConsumerInterface::class); $consumerHandler = m::mock(ConsumerHandler::class); $dispatcher = m::mock(Dispatcher::class); - $runner = new Manager($consumer, $consumerHandler, $dispatcher, false, true); + $runner = new Manager( + $consumer, + $consumerHandler, + $dispatcher, + false, + true + ); $kafkaMessage1 = new KafkaMessage(); $kafkaMessage1->payload = 'original message 1'; @@ -135,20 +146,24 @@ public function testShouldHandleAsyncCommit(): void $messages = [$kafkaMessage1, $kafkaMessage2]; $count = 0; - $exception = new ResponseTimeoutException('Consume timeout or finished to processed.'); + $exception = new ResponseTimeoutException( + 'Consume timeout or finished to processed.' + ); // Expectations $consumer->shouldReceive('consume') ->times(3) - ->andReturnUsing(function () use ($messages, &$count, $exception) { - $message = $messages[$count] ?? null; - if (!$message) { - throw $exception; + ->andReturnUsing( + function () use ($messages, &$count, $exception) { + $message = $messages[$count] ?? null; + if (!$message) { + throw $exception; + } + $count++; + + return $message; } - $count++; - - return $message; - }); + ); $consumer->expects() ->commitAsync() @@ -171,4 +186,22 @@ public function testShouldHandleAsyncCommit(): void $runner->handleMessage(); $runner->handleMessage(); } + + protected function setUp(): void + { + parent::setUp(); + + $configManager = new ConsumerConfigManager(); + $configManager->set([ + 'connections' => 'kafka:2019', + 'topic' => 'topic_key', + 'broker' => 'default', + 'offset_reset' => 'earliest', + 'offset' => 0, + 'timeout' => 30, + 'handler' => ConsumerHandlerDummy::class, + 'middlewares' => [], + 'consumer_group' => 'consumer-id', + ]); + } } diff --git a/tests/Unit/Connectors/Producer/ConfigTest.php b/tests/Unit/Connectors/Producer/ConfigTest.php index 5629ad65..f83588a1 100644 --- a/tests/Unit/Connectors/Producer/ConfigTest.php +++ b/tests/Unit/Connectors/Producer/ConfigTest.php @@ -1,4 +1,5 @@ 3000]); $config = new Config(); - $broker = new Broker('kafka:9092', new SaslSsl('PLAIN', 'USERNAME', 'PASSWORD')); + $broker = new Broker( + 'kafka:9092', + new SaslSsl('PLAIN', 'USERNAME', 'PASSWORD') + ); $configOptions = new ProducerConfigOptions('TOPIC-ID', $broker); $expected = [ diff --git a/tests/Unit/Connectors/Producer/ConnectorTest.php b/tests/Unit/Connectors/Producer/ConnectorTest.php index 2cafe6cc..c832b619 100644 --- a/tests/Unit/Connectors/Producer/ConnectorTest.php +++ b/tests/Unit/Connectors/Producer/ConnectorTest.php @@ -1,4 +1,5 @@ [ - 'brokers' => [ - 'default' => [ - 'connections' => 'kafka:9092', - 'auth' => [], - ], - ], - 'topics' => [ - 'topic_key' => [ - 'topic_id' => 'topic_name', - 'broker' => 'default', - 'consumer' => [ - 'consumer_groups' => [ - 'default' => [ - 'offset_reset' => 'earliest', - 'handler' => ConsumerHandlerDummy::class, - 'timeout' => 123, - ], - ], - ], - ], - ], - ], - ]); - } - public function testItCallsCommandWithInvalidTopic(): void { // Set @@ -161,4 +131,35 @@ public function testItOverridesBrokerConnectionWhenCallingCommand(): void $this->artisan($command, $parameters); } + + protected function setUp(): void + { + parent::setUp(); + + config([ + 'kafka' => [ + 'brokers' => [ + 'default' => [ + 'connections' => 'test_kafka:6680', + 'auth' => [], + ], + ], + 'topics' => [ + 'topic_key' => [ + 'topic_id' => 'topic_name', + 'broker' => 'default', + 'consumer' => [ + 'consumer_groups' => [ + 'default' => [ + 'offset_reset' => 'earliest', + 'handler' => ConsumerHandlerDummy::class, + 'timeout' => 123, + ], + ], + ], + ], + ], + ], + ]); + } } diff --git a/tests/Unit/Console/ConsumerMakeCommandTest.php b/tests/Unit/Console/ConsumerMakeCommandTest.php index 25f7f379..e68259c9 100644 --- a/tests/Unit/Console/ConsumerMakeCommandTest.php +++ b/tests/Unit/Console/ConsumerMakeCommandTest.php @@ -1,4 +1,5 @@ instance(AbstractHandler::class, m::mock(AbstractHandler::class)); + $handler = $this->instance( + AbstractHandler::class, + m::mock(AbstractHandler::class) + ); $config = [ 'middlewares' => [], 'handler' => AbstractHandler::class, diff --git a/tests/Unit/Consumers/HighLevelTest.php b/tests/Unit/Consumers/HighLevelTest.php index 71967f80..3969ea27 100644 --- a/tests/Unit/Consumers/HighLevelTest.php +++ b/tests/Unit/Consumers/HighLevelTest.php @@ -1,4 +1,5 @@ andReturnUsing(function () use (&$count) { if (3 === $count) { $exception = new Exception('Error when consuming.'); + throw $exception; } $count++; + return; }); @@ -45,7 +48,7 @@ public function testItShouldRunADeterminedNumberOfTimes(): void // Expectations $manager->shouldReceive('handleMessage') ->times(3) - ->andReturnUsing(function () use (&$count) { + ->andReturnUsing(function () { return; }); @@ -62,7 +65,7 @@ public function testItShouldRunADeterminedNumberOfTimesButStopsOnException(): vo // Expectations $manager->shouldReceive('handleMessage') ->times(1) - ->andReturnUsing(function () use (&$count) { + ->andReturnUsing(function () { throw new Exception('Error when consuming.'); }); diff --git a/tests/Unit/Dummies/ConsumerHandlerDummy.php b/tests/Unit/Dummies/ConsumerHandlerDummy.php index 08eb14a0..3ac49c63 100644 --- a/tests/Unit/Dummies/ConsumerHandlerDummy.php +++ b/tests/Unit/Dummies/ConsumerHandlerDummy.php @@ -1,4 +1,5 @@ record = $record; $this->topic = $topic; diff --git a/tests/Unit/Dummies/SecondProducerHandlerDummy.php b/tests/Unit/Dummies/SecondProducerHandlerDummy.php index f5712e18..26f4b5d5 100644 --- a/tests/Unit/Dummies/SecondProducerHandlerDummy.php +++ b/tests/Unit/Dummies/SecondProducerHandlerDummy.php @@ -1,11 +1,12 @@ record = $record; $this->topic = $topic; diff --git a/tests/Unit/Facades/MetamorphosisTest.php b/tests/Unit/Facades/MetamorphosisTest.php index dbf6e420..ceee5b54 100644 --- a/tests/Unit/Facades/MetamorphosisTest.php +++ b/tests/Unit/Facades/MetamorphosisTest.php @@ -1,4 +1,5 @@ set([ - 'topic_id' => 'topic_name', - 'timeout' => 4000, - 'is_async' => true, - 'max_poll_records' => 500, - 'flush_attempts' => 10, - 'required_acknowledgment' => true, - 'partition' => 0, - ]); - } - public function testItShouldSendMessageToKafkaBroker(): void { // Set @@ -53,4 +38,20 @@ public function testItShouldSendMessageToKafkaBroker(): void $producerHandler = new Producer($producerTopic, $poll, 1); $producerHandler->process($record, $closure); } + + protected function setUp(): void + { + parent::setUp(); + + $configManager = new ProducerConfigManager(); + $configManager->set([ + 'topic_id' => 'topic_name', + 'timeout' => 4000, + 'is_async' => true, + 'max_poll_records' => 500, + 'flush_attempts' => 10, + 'required_acknowledgment' => true, + 'partition' => 0, + ]); + } } diff --git a/tests/Unit/Middlewares/JsonDecodeTest.php b/tests/Unit/Middlewares/JsonDecodeTest.php index cfbc0d5a..1f721e40 100644 --- a/tests/Unit/Middlewares/JsonDecodeTest.php +++ b/tests/Unit/Middlewares/JsonDecodeTest.php @@ -1,4 +1,5 @@ assertSame($expected, $configManager->get()); - $this->assertInstanceOf(MiddlewareDummy::class, current($configManager->middlewares())); + $this->assertInstanceOf( + MiddlewareDummy::class, + current($configManager->middlewares()) + ); } } diff --git a/tests/Unit/ProducerTest.php b/tests/Unit/ProducerTest.php index df3460d8..864b92d4 100644 --- a/tests/Unit/ProducerTest.php +++ b/tests/Unit/ProducerTest.php @@ -1,4 +1,5 @@ andReturn('Process timed out.'); $this->expectException(ResponseTimeoutException::class); - $this->expectExceptionMessage('Consumer finished to process or timed out: Process timed out.'); + $this->expectExceptionMessage( + 'Consumer finished to process or timed out: Process timed out.' + ); $this->expectExceptionCode(RD_KAFKA_RESP_ERR__TIMED_OUT); // Actions diff --git a/tests/Unit/Record/ProducerRecordTest.php b/tests/Unit/Record/ProducerRecordTest.php index 4f0ea300..d877e15f 100644 --- a/tests/Unit/Record/ProducerRecordTest.php +++ b/tests/Unit/Record/ProducerRecordTest.php @@ -1,4 +1,5 @@ 'earliest', ]; // Actions - $result = ConsumerFactory::make($brokerData, $topicData, $avroSchemaData); + $result = ConsumerFactory::make( + $brokerData, + $topicData, + $avroSchemaData + ); // Assertions $this->assertInstanceOf(Consumer::class, $result); diff --git a/tests/Unit/TopicHandler/ConfigOptions/Factories/ProducerFactoryTest.php b/tests/Unit/TopicHandler/ConfigOptions/Factories/ProducerFactoryTest.php index 2c7e1c82..b9dac202 100644 --- a/tests/Unit/TopicHandler/ConfigOptions/Factories/ProducerFactoryTest.php +++ b/tests/Unit/TopicHandler/ConfigOptions/Factories/ProducerFactoryTest.php @@ -1,4 +1,5 @@ assertInstanceOf(Producer::class, $result); diff --git a/tests/Unit/TopicHandler/ConfigOptions/ProducerTest.php b/tests/Unit/TopicHandler/ConfigOptions/ProducerTest.php index 900e8b27..5fff3e12 100644 --- a/tests/Unit/TopicHandler/ConfigOptions/ProducerTest.php +++ b/tests/Unit/TopicHandler/ConfigOptions/ProducerTest.php @@ -1,4 +1,5 @@ Date: Fri, 8 Jul 2022 10:08:12 -0300 Subject: [PATCH 15/28] chore(php81): adjust tests --- src/Avro/Schema.php | 4 ++-- src/Connectors/Consumer/Manager.php | 6 ++++-- src/Console/ConsumerMakeCommand.php | 15 +++++++++------ src/Console/MiddlewareMakeCommand.php | 12 ++++++------ src/Console/ProducerMakeCommand.php | 12 ++++++------ src/Consumers/LowLevel.php | 2 +- src/Producer/Poll.php | 10 +++++----- src/TopicHandler/ConfigOptions/Consumer.php | 4 ++-- src/TopicHandler/ConfigOptions/Producer.php | 2 +- src/TopicHandler/Consumer/AbstractHandler.php | 2 +- src/TopicHandler/Producer/AbstractHandler.php | 4 ++-- src/TopicHandler/Producer/AbstractProducer.php | 2 +- tests/Integration/Dummies/MessageProducer.php | 3 ++- .../Unit/Avro/CachedSchemaRegistryClientTest.php | 2 ++ tests/Unit/Connectors/Producer/ConnectorTest.php | 4 ++-- tests/Unit/Middlewares/LogTest.php | 5 +---- 16 files changed, 47 insertions(+), 42 deletions(-) diff --git a/src/Avro/Schema.php b/src/Avro/Schema.php index ea80e975..cd200437 100644 --- a/src/Avro/Schema.php +++ b/src/Avro/Schema.php @@ -8,9 +8,9 @@ class Schema { private string $schemaId; - private string $subject; + private ?string $subject; - private string $version; + private ?string $version; private AvroSchema $avroSchema; diff --git a/src/Connectors/Consumer/Manager.php b/src/Connectors/Consumer/Manager.php index 118b4bba..64ff15b4 100644 --- a/src/Connectors/Consumer/Manager.php +++ b/src/Connectors/Consumer/Manager.php @@ -23,20 +23,22 @@ class Manager private bool $commitAsync; - private Message $lastResponse; + private ?Message $lastResponse; public function __construct( ConsumerInterface $consumer, ConsumerHandler $consumerHandler, Dispatcher $dispatcher, bool $autoCommit, - bool $commitAsync + bool $commitAsync, + ?Message $lastResponse = null ) { $this->consumer = $consumer; $this->consumerHandler = $consumerHandler; $this->dispatcher = $dispatcher; $this->autoCommit = $autoCommit; $this->commitAsync = $commitAsync; + $this->lastResponse = $lastResponse; } public function getConsumer(): ConsumerInterface diff --git a/src/Console/ConsumerMakeCommand.php b/src/Console/ConsumerMakeCommand.php index 23008f21..8c17deb9 100644 --- a/src/Console/ConsumerMakeCommand.php +++ b/src/Console/ConsumerMakeCommand.php @@ -8,21 +8,24 @@ class ConsumerMakeCommand extends GeneratorCommand { /** * The console command name. - * + * @string + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $name = 'make:kafka-consumer'; + protected $name = 'make:kafka-consumer'; /** * The console command description. - * + * @string + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $description = 'Create a new kafka consumer'; + protected $description = 'Create a new kafka consumer'; /** * The type of class being generated. - * + * @string + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $type = 'KafkaConsumer'; + protected $type = 'KafkaConsumer'; /** * Get the stub file for the generator. diff --git a/src/Console/MiddlewareMakeCommand.php b/src/Console/MiddlewareMakeCommand.php index feca9ab1..69bde347 100644 --- a/src/Console/MiddlewareMakeCommand.php +++ b/src/Console/MiddlewareMakeCommand.php @@ -8,21 +8,21 @@ class MiddlewareMakeCommand extends GeneratorCommand { /** * The console command name. - * + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $name = 'make:kafka-middleware'; + protected $name = 'make:kafka-middleware'; /** * The console command description. - * + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $description = 'Create a new kafka middleware'; + protected $description = 'Create a new kafka middleware'; /** * The type of class being generated. - * + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $type = 'KafkaMiddleware'; + protected $type = 'KafkaMiddleware'; /** * Get the stub file for the generator. diff --git a/src/Console/ProducerMakeCommand.php b/src/Console/ProducerMakeCommand.php index b66cc3cd..b98756ba 100644 --- a/src/Console/ProducerMakeCommand.php +++ b/src/Console/ProducerMakeCommand.php @@ -8,21 +8,21 @@ class ProducerMakeCommand extends GeneratorCommand { /** * The console command name. - * + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $name = 'make:kafka-producer'; + protected $name = 'make:kafka-producer'; /** * The console command description. - * + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $description = 'Create a new kafka producer'; + protected $description = 'Create a new kafka producer'; /** * The type of class being generated. - * + * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingAnyTypeHint */ - protected string $type = 'KafkaProducer'; + protected $type = 'KafkaProducer'; /** * Get the stub file for the generator. diff --git a/src/Consumers/LowLevel.php b/src/Consumers/LowLevel.php index bf903849..0a1d762b 100644 --- a/src/Consumers/LowLevel.php +++ b/src/Consumers/LowLevel.php @@ -12,7 +12,7 @@ class LowLevel implements ConsumerInterface private int $partition; - private int $timeout; + private ?int $timeout; public function __construct(ConsumerTopic $consumer, AbstractConfigManager $configManager) { diff --git a/src/Producer/Poll.php b/src/Producer/Poll.php index 8a34de8c..83db6798 100644 --- a/src/Producer/Poll.php +++ b/src/Producer/Poll.php @@ -12,15 +12,15 @@ class Poll private int $processedMessagesCount = 0; - private bool $isAsync; + private ?bool $isAsync; - private int $maxPollRecords; + private ?int $maxPollRecords; - private bool $requiredAcknowledgment; + private ?bool $requiredAcknowledgment; - private int $maxFlushAttempts; + private ?int $maxFlushAttempts; - private int $timeout; + private ?int $timeout; private Producer $producer; diff --git a/src/TopicHandler/ConfigOptions/Consumer.php b/src/TopicHandler/ConfigOptions/Consumer.php index 74b5f23f..ffddc2c7 100644 --- a/src/TopicHandler/ConfigOptions/Consumer.php +++ b/src/TopicHandler/ConfigOptions/Consumer.php @@ -6,7 +6,7 @@ class Consumer { private Broker $broker; - private AvroSchema $avroSchema; + private ?AvroSchema $avroSchema; /** * Middlewares specific for this producer. @@ -28,7 +28,7 @@ class Consumer private string $consumerGroup; - private string $handler; + private ?string $handler; private bool $autoCommit; diff --git a/src/TopicHandler/ConfigOptions/Producer.php b/src/TopicHandler/ConfigOptions/Producer.php index 3ab08afc..0087dcaf 100644 --- a/src/TopicHandler/ConfigOptions/Producer.php +++ b/src/TopicHandler/ConfigOptions/Producer.php @@ -6,7 +6,7 @@ class Producer { private Broker $broker; - private AvroSchema $avroSchema; + private ?AvroSchema $avroSchema; /** * The amount of attempts we will try to run the flush. diff --git a/src/TopicHandler/Consumer/AbstractHandler.php b/src/TopicHandler/Consumer/AbstractHandler.php index 4a9cee30..461fa0c1 100644 --- a/src/TopicHandler/Consumer/AbstractHandler.php +++ b/src/TopicHandler/Consumer/AbstractHandler.php @@ -12,7 +12,7 @@ abstract class AbstractHandler implements Handler * Merge and override config from kafka file. * */ - private ConsumerConfigOptions $configOptions; + private ?ConsumerConfigOptions $configOptions; public function __construct(?ConsumerConfigOptions $configOptions = null) { diff --git a/src/TopicHandler/Producer/AbstractHandler.php b/src/TopicHandler/Producer/AbstractHandler.php index 840d1e3f..81a91bd2 100644 --- a/src/TopicHandler/Producer/AbstractHandler.php +++ b/src/TopicHandler/Producer/AbstractHandler.php @@ -18,9 +18,9 @@ abstract class AbstractHandler implements HandlerInterface protected string $topic; - protected string $key; + protected ?string $key; - protected int $partition; + protected ?int $partition; public function __construct($record, ?string $topic = null, ?string $key = null, ?int $partition = null) { diff --git a/src/TopicHandler/Producer/AbstractProducer.php b/src/TopicHandler/Producer/AbstractProducer.php index 68551118..101ef973 100644 --- a/src/TopicHandler/Producer/AbstractProducer.php +++ b/src/TopicHandler/Producer/AbstractProducer.php @@ -14,7 +14,7 @@ class AbstractProducer implements HandlerInterface */ protected $record; - protected string $key; + protected ?string $key; private ConfigOptionsProducer $configOptions; diff --git a/tests/Integration/Dummies/MessageProducer.php b/tests/Integration/Dummies/MessageProducer.php index 1836562c..01d9b1d6 100644 --- a/tests/Integration/Dummies/MessageProducer.php +++ b/tests/Integration/Dummies/MessageProducer.php @@ -15,7 +15,8 @@ public function __construct($record, ?string $topic = null, ?string $key = null, { $this->record = $record; $this->topic = $topic ?? 'default'; - $this->key = 'recordId123'; + $this->key = $key ?? 'recordId123'; + $this->partition = $partition; } public function success(Message $message): void diff --git a/tests/Unit/Avro/CachedSchemaRegistryClientTest.php b/tests/Unit/Avro/CachedSchemaRegistryClientTest.php index cbcf1c02..89cc2b07 100644 --- a/tests/Unit/Avro/CachedSchemaRegistryClientTest.php +++ b/tests/Unit/Avro/CachedSchemaRegistryClientTest.php @@ -22,6 +22,8 @@ public function testGetById(): void $schema = new Schema(); $schema->setAvroSchema($parsedSchema); $schema->setSchemaId('123'); + $schema->setSubject(null); + $schema->setVersion(null); $response = [ 'schema' => $schemaString, diff --git a/tests/Unit/Connectors/Producer/ConnectorTest.php b/tests/Unit/Connectors/Producer/ConnectorTest.php index c832b619..e0cb6123 100644 --- a/tests/Unit/Connectors/Producer/ConnectorTest.php +++ b/tests/Unit/Connectors/Producer/ConnectorTest.php @@ -49,7 +49,7 @@ public function failed(Message $message): void ->withAnyArgs(); $conf->expects() - ->set('metadata.broker.list', 0); + ->set('metadata.broker.list', 'kafka:9092'); $configManager->expects() ->get('connections') @@ -98,7 +98,7 @@ public function failed(Message $message): void ->never(); $conf->expects() - ->set('metadata.broker.list', 0); + ->set('metadata.broker.list', 'kafka:9092'); $configManager->expects() ->get('connections') diff --git a/tests/Unit/Middlewares/LogTest.php b/tests/Unit/Middlewares/LogTest.php index b21e12de..ab7b7e9c 100644 --- a/tests/Unit/Middlewares/LogTest.php +++ b/tests/Unit/Middlewares/LogTest.php @@ -31,13 +31,10 @@ public function testItShouldLogMessage(): void 'original' => [ 'err' => RD_KAFKA_RESP_ERR_NO_ERROR, 'topic_name' => null, - 'partition' => null, + 'timestamp' => null, 'payload' => 'original record', 'len' => null, 'key' => null, - 'offset' => null, - 'timestamp' => null, - 'headers' => null, 'opaque' => null, ], ]); From c1b660e72e1e0f41728fabc6a9c904a6d9190d1a Mon Sep 17 00:00:00 2001 From: williancs Date: Wed, 14 Sep 2022 10:54:25 -0300 Subject: [PATCH 16/28] chore(php81): adjust config brokers --- src/Connectors/AbstractConfig.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/Connectors/AbstractConfig.php b/src/Connectors/AbstractConfig.php index 4a8be004..9942dc2e 100644 --- a/src/Connectors/AbstractConfig.php +++ b/src/Connectors/AbstractConfig.php @@ -7,15 +7,20 @@ abstract class AbstractConfig { + /** + * @var mixed[] + */ + protected array $rules = []; + protected function getBrokerConfig(string $configName, string $brokerId): array { - if (!$brokerConfig = config($configName . ".brokers.{$brokerId}")) { + if (!$brokerConfig = config("{$configName}.brokers.{$brokerId}")) { throw new ConfigurationException( "Broker '{$brokerId}' configuration not found" ); } - return $brokerConfig; + return (array) $brokerConfig; } protected function validate(array $config): void From 4a327a02129714462e9ab1c08f29e559d48d84a3 Mon Sep 17 00:00:00 2001 From: williancs Date: Wed, 14 Sep 2022 11:18:48 -0300 Subject: [PATCH 17/28] chore(php81): update packages version --- composer.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 8d952cb6..081ca267 100644 --- a/composer.json +++ b/composer.json @@ -14,7 +14,7 @@ "illuminate/console": "^5.5 || ^6.0 || ^7.0 || ^8.0", "illuminate/config": "^5.5 || ^6.0 || ^7.0 || ^8.0", "php": ">=7.4", - "wikimedia/avro": "^1.7" + "wikimedia/avro": "^1.9.0" }, "require-dev": { "leroy-merlin-br/coding-standard": "^v3.1.0", @@ -26,7 +26,7 @@ "phpro/grumphp": "^1.13.0", "vimeo/psalm": "^4.27.0", "psalm/plugin-mockery": "^0.9.1", - "rector/rector": "^0.13.7" + "rector/rector": "^0.13.10" }, "autoload": { "psr-4": { From 2373edb563af16894db84264f8f904cf4315f2b4 Mon Sep 17 00:00:00 2001 From: williancs Date: Wed, 14 Sep 2022 11:29:10 -0300 Subject: [PATCH 18/28] chore(php81): adjust docblock types --- src/AbstractConfigManager.php | 4 ++-- src/TopicHandler/ConfigOptions/AvroSchema.php | 2 +- src/TopicHandler/ConfigOptions/Consumer.php | 2 +- src/TopicHandler/ConfigOptions/Producer.php | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/AbstractConfigManager.php b/src/AbstractConfigManager.php index d765b727..8bce1114 100644 --- a/src/AbstractConfigManager.php +++ b/src/AbstractConfigManager.php @@ -7,12 +7,12 @@ abstract class AbstractConfigManager { /** - * @var array + * @var mixed[] */ protected array $setting = []; /** - * @var array + * @var mixed[] */ protected array $middlewares = []; diff --git a/src/TopicHandler/ConfigOptions/AvroSchema.php b/src/TopicHandler/ConfigOptions/AvroSchema.php index 323915e6..150bab62 100644 --- a/src/TopicHandler/ConfigOptions/AvroSchema.php +++ b/src/TopicHandler/ConfigOptions/AvroSchema.php @@ -29,7 +29,7 @@ class AvroSchema * ], * ], * - * @var array + * @var mixed[] */ private array $requestOptions; diff --git a/src/TopicHandler/ConfigOptions/Consumer.php b/src/TopicHandler/ConfigOptions/Consumer.php index ffddc2c7..e2caa016 100644 --- a/src/TopicHandler/ConfigOptions/Consumer.php +++ b/src/TopicHandler/ConfigOptions/Consumer.php @@ -11,7 +11,7 @@ class Consumer /** * Middlewares specific for this producer. * - * @var array + * @var mixed[] */ private array $middlewares; diff --git a/src/TopicHandler/ConfigOptions/Producer.php b/src/TopicHandler/ConfigOptions/Producer.php index 0087dcaf..3d97bd72 100644 --- a/src/TopicHandler/ConfigOptions/Producer.php +++ b/src/TopicHandler/ConfigOptions/Producer.php @@ -32,7 +32,7 @@ class Producer /** * Middlewares specific for this producer. * - * @var array + * @var mixed[] */ private array $middlewares; From a7aecd20ef5cb2003ade0866424708180ba49e43 Mon Sep 17 00:00:00 2001 From: williancs Date: Tue, 20 Sep 2022 16:49:03 -0300 Subject: [PATCH 19/28] chore(composer): bump dependencies --- composer.lock | 755 ++++++++++++++++++++++++++++---------------------- 1 file changed, 428 insertions(+), 327 deletions(-) diff --git a/composer.lock b/composer.lock index 58ae09ec..aeb6671c 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": "a5f4d0bbaf6a177817316e97681e6ddf", + "content-hash": "f02a9e65b062fd8e6b6a65d000b57126", "packages": [ { "name": "brick/math", @@ -68,16 +68,16 @@ }, { "name": "dflydev/dot-access-data", - "version": "v3.0.2", + "version": "v3.0.1", "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-dot-access-data.git", - "reference": "f41715465d65213d644d3141a6a93081be5d3549" + "reference": "0992cc19268b259a39e86f296da5f0677841f42c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549", - "reference": "f41715465d65213d644d3141a6a93081be5d3549", + "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c", "shasum": "" }, "require": { @@ -88,7 +88,7 @@ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", "scrutinizer/ocular": "1.6.0", "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.0.0" + "vimeo/psalm": "^3.14" }, "type": "library", "extra": { @@ -137,29 +137,29 @@ ], "support": { "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", - "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2" + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" }, - "time": "2022-10-27T11:44:00+00:00" + "time": "2021-08-13T13:06:58+00:00" }, { "name": "doctrine/inflector", - "version": "2.0.6", + "version": "2.0.5", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024" + "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", - "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", + "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", + "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", "shasum": "" }, "require": { "php": "^7.2 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^10", + "doctrine/coding-standard": "^9", "phpstan/phpstan": "^1.8", "phpstan/phpstan-phpunit": "^1.1", "phpstan/phpstan-strict-rules": "^1.3", @@ -214,7 +214,7 @@ ], "support": { "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.6" + "source": "https://github.com/doctrine/inflector/tree/2.0.5" }, "funding": [ { @@ -230,7 +230,7 @@ "type": "tidelift" } ], - "time": "2022-10-20T09:10:12+00:00" + "time": "2022-09-07T09:01:28+00:00" }, { "name": "doctrine/lexer", @@ -713,16 +713,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "2.4.3", + "version": "2.4.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "67c26b443f348a51926030c83481b85718457d3d" + "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", - "reference": "67c26b443f348a51926030c83481b85718457d3d", + "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/69568e4293f4fa993f3b0e51c9723e1e17c41379", + "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379", "shasum": "" }, "require": { @@ -812,7 +812,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.3" + "source": "https://github.com/guzzle/psr7/tree/2.4.1" }, "funding": [ { @@ -828,20 +828,20 @@ "type": "tidelift" } ], - "time": "2022-10-26T14:07:24+00:00" + "time": "2022-08-28T14:45:39+00:00" }, { "name": "laravel/framework", - "version": "v8.83.27", + "version": "v8.83.23", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49" + "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/framework/zipball/e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49", - "reference": "e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49", + "url": "https://github.com/gitapi/repos/laravel/framework/zipball/bdc707f8b9bcad289b24cd182d98ec7480ac4491", + "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491", "shasum": "" }, "require": { @@ -1001,7 +1001,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-12-08T15:28:55+00:00" + "time": "2022-07-26T13:30:00+00:00" }, { "name": "laravel/serializable-closure", @@ -1065,16 +1065,16 @@ }, { "name": "league/commonmark", - "version": "2.3.8", + "version": "2.3.5", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47" + "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/c493585c130544c4e91d2e0e131e6d35cb0cbc47", - "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47", + "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/84d74485fdb7074f4f9dd6f02ab957b1de513257", + "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257", "shasum": "" }, "require": { @@ -1094,7 +1094,7 @@ "erusev/parsedown": "^1.0", "ext-json": "*", "github/gfm": "0.29.0", - "michelf/php-markdown": "^1.4 || ^2.0", + "michelf/php-markdown": "^1.4", "nyholm/psr7": "^1.5", "phpstan/phpstan": "^1.8.2", "phpunit/phpunit": "^9.5.21", @@ -1102,7 +1102,7 @@ "symfony/finder": "^5.3 | ^6.0", "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", "unleashedtech/php-coding-standard": "^3.1.1", - "vimeo/psalm": "^4.24.0 || ^5.0.0" + "vimeo/psalm": "^4.24.0" }, "suggest": { "symfony/yaml": "v2.3+ required if using the Front Matter extension" @@ -1167,20 +1167,20 @@ "type": "tidelift" } ], - "time": "2022-12-10T16:02:17+00:00" + "time": "2022-07-29T10:59:45+00:00" }, { "name": "league/config", - "version": "v1.2.0", + "version": "v1.1.1", "source": { "type": "git", "url": "https://github.com/thephpleague/config.git", - "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3" + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", - "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", + "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", "shasum": "" }, "require": { @@ -1189,7 +1189,7 @@ "php": "^7.4 || ^8.0" }, "require-dev": { - "phpstan/phpstan": "^1.8.2", + "phpstan/phpstan": "^0.12.90", "phpunit/phpunit": "^9.5.5", "scrutinizer/ocular": "^1.8.1", "unleashedtech/php-coding-standard": "^3.1", @@ -1249,20 +1249,20 @@ "type": "github" } ], - "time": "2022-12-11T20:36:23+00:00" + "time": "2021-08-14T12:15:32+00:00" }, { "name": "league/flysystem", - "version": "1.1.10", + "version": "1.1.9", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "3239285c825c152bcc315fe0e87d6b55f5972ed1" + "reference": "094defdb4a7001845300334e7c1ee2335925ef99" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/flysystem/zipball/3239285c825c152bcc315fe0e87d6b55f5972ed1", - "reference": "3239285c825c152bcc315fe0e87d6b55f5972ed1", + "url": "https://github.com/gitapi/repos/thephpleague/flysystem/zipball/094defdb4a7001845300334e7c1ee2335925ef99", + "reference": "094defdb4a7001845300334e7c1ee2335925ef99", "shasum": "" }, "require": { @@ -1335,7 +1335,7 @@ ], "support": { "issues": "https://github.com/thephpleague/flysystem/issues", - "source": "https://github.com/thephpleague/flysystem/tree/1.1.10" + "source": "https://github.com/thephpleague/flysystem/tree/1.1.9" }, "funding": [ { @@ -1343,7 +1343,7 @@ "type": "other" } ], - "time": "2022-10-04T09:16:37+00:00" + "time": "2021-12-09T09:40:50+00:00" }, { "name": "league/mime-type-detection", @@ -1505,16 +1505,16 @@ }, { "name": "nesbot/carbon", - "version": "2.64.0", + "version": "2.62.1", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "889546413c97de2d05063b8cb7b193c2531ea211" + "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/889546413c97de2d05063b8cb7b193c2531ea211", - "reference": "889546413c97de2d05063b8cb7b193c2531ea211", + "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", + "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", "shasum": "" }, "require": { @@ -1525,7 +1525,7 @@ "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" }, "require-dev": { - "doctrine/dbal": "^2.0 || ^3.1.4", + "doctrine/dbal": "^2.0 || ^3.0", "doctrine/orm": "^2.7", "friendsofphp/php-cs-fixer": "^3.0", "kylekatarnls/multi-tester": "^2.0", @@ -1603,29 +1603,29 @@ "type": "tidelift" } ], - "time": "2022-11-26T17:36:00+00:00" + "time": "2022-09-02T07:48:13+00:00" }, { "name": "nette/schema", - "version": "v1.2.3", + "version": "v1.2.2", "source": { "type": "git", "url": "https://github.com/nette/schema.git", - "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f" + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nette/schema/zipball/abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", - "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", + "url": "https://github.com/gitapi/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", "shasum": "" }, "require": { "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", - "php": ">=7.1 <8.3" + "php": ">=7.1 <8.2" }, "require-dev": { "nette/tester": "^2.3 || ^2.4", - "phpstan/phpstan-nette": "^1.0", + "phpstan/phpstan-nette": "^0.12", "tracy/tracy": "^2.7" }, "type": "library", @@ -1663,9 +1663,9 @@ ], "support": { "issues": "https://github.com/nette/schema/issues", - "source": "https://github.com/nette/schema/tree/v1.2.3" + "source": "https://github.com/nette/schema/tree/v1.2.2" }, - "time": "2022-10-13T01:24:26+00:00" + "time": "2021-10-15T11:40:02+00:00" }, { "name": "nette/utils", @@ -2550,16 +2550,16 @@ }, { "name": "symfony/console", - "version": "v5.4.16", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "8e9b9c8dfb33af6057c94e1b44846bee700dc5ef" + "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/console/zipball/8e9b9c8dfb33af6057c94e1b44846bee700dc5ef", - "reference": "8e9b9c8dfb33af6057c94e1b44846bee700dc5ef", + "url": "https://github.com/gitapi/repos/symfony/console/zipball/c072aa8f724c3af64e2c7a96b796a4863d24dba1", + "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1", "shasum": "" }, "require": { @@ -2629,7 +2629,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.16" + "source": "https://github.com/symfony/console/tree/v5.4.12" }, "funding": [ { @@ -2645,7 +2645,7 @@ "type": "tidelift" } ], - "time": "2022-11-25T14:09:27+00:00" + "time": "2022-08-17T13:18:05+00:00" }, { "name": "symfony/css-selector", @@ -2782,16 +2782,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.4.15", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "539cf1428b8442303c6e876ad7bf5a7babd91091" + "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/539cf1428b8442303c6e876ad7bf5a7babd91091", - "reference": "539cf1428b8442303c6e876ad7bf5a7babd91091", + "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/f75d17cb4769eb38cd5fccbda95cd80a054d35c8", + "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8", "shasum": "" }, "require": { @@ -2833,7 +2833,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v5.4.15" + "source": "https://github.com/symfony/error-handler/tree/v5.4.11" }, "funding": [ { @@ -2849,7 +2849,7 @@ "type": "tidelift" } ], - "time": "2022-10-27T06:32:25+00:00" + "time": "2022-07-29T07:37:50+00:00" }, { "name": "symfony/event-dispatcher", @@ -3080,16 +3080,16 @@ }, { "name": "symfony/http-foundation", - "version": "v5.4.16", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "5032c5849aef24741e1970cb03511b0dd131d838" + "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/5032c5849aef24741e1970cb03511b0dd131d838", - "reference": "5032c5849aef24741e1970cb03511b0dd131d838", + "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/f4bfe9611b113b15d98a43da68ec9b5a00d56791", + "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791", "shasum": "" }, "require": { @@ -3136,7 +3136,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.16" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.12" }, "funding": [ { @@ -3152,20 +3152,20 @@ "type": "tidelift" } ], - "time": "2022-11-07T08:06:40+00:00" + "time": "2022-08-19T07:33:17+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.4.16", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "b432c57c5de73634b1859093c1f58e3cd84455a1" + "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/b432c57c5de73634b1859093c1f58e3cd84455a1", - "reference": "b432c57c5de73634b1859093c1f58e3cd84455a1", + "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/37f660fa3bcd78fe4893ce23ebe934618ec099be", + "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be", "shasum": "" }, "require": { @@ -3248,7 +3248,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v5.4.16" + "source": "https://github.com/symfony/http-kernel/tree/v5.4.12" }, "funding": [ { @@ -3264,20 +3264,20 @@ "type": "tidelift" } ], - "time": "2022-11-28T18:08:58+00:00" + "time": "2022-08-26T14:40:40+00:00" }, { "name": "symfony/mime", - "version": "v5.4.16", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "46eeedb08f0832b1b61a84c612d945fc85ee4734" + "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/mime/zipball/46eeedb08f0832b1b61a84c612d945fc85ee4734", - "reference": "46eeedb08f0832b1b61a84c612d945fc85ee4734", + "url": "https://github.com/gitapi/repos/symfony/mime/zipball/03876e9c5a36f5b45e7d9a381edda5421eff8a90", + "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90", "shasum": "" }, "require": { @@ -3291,8 +3291,7 @@ "egulias/email-validator": "~3.0.0", "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", - "symfony/mailer": "<4.4", - "symfony/serializer": "<5.4.14|>=6.0,<6.0.14|>=6.1,<6.1.6" + "symfony/mailer": "<4.4" }, "require-dev": { "egulias/email-validator": "^2.1.10|^3.1", @@ -3300,7 +3299,7 @@ "symfony/dependency-injection": "^4.4|^5.0|^6.0", "symfony/property-access": "^4.4|^5.1|^6.0", "symfony/property-info": "^4.4|^5.1|^6.0", - "symfony/serializer": "^5.4.14|~6.0.14|^6.1.6" + "symfony/serializer": "^5.2|^6.0" }, "type": "library", "autoload": { @@ -3332,7 +3331,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.16" + "source": "https://github.com/symfony/mime/tree/v5.4.12" }, "funding": [ { @@ -3348,20 +3347,20 @@ "type": "tidelift" } ], - "time": "2022-11-26T16:45:22+00:00" + "time": "2022-08-19T14:24:03+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" + "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", + "url": "https://github.com/gitapi/repos/symfony/polyfill-ctype/zipball/6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", + "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", "shasum": "" }, "require": { @@ -3376,7 +3375,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3414,7 +3413,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.26.0" }, "funding": [ { @@ -3430,20 +3429,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/polyfill-iconv", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", - "reference": "927013f3aac555983a5059aada98e1907d842695" + "reference": "143f1881e655bebca1312722af8068de235ae5dc" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-iconv/zipball/927013f3aac555983a5059aada98e1907d842695", - "reference": "927013f3aac555983a5059aada98e1907d842695", + "url": "https://github.com/gitapi/repos/symfony/polyfill-iconv/zipball/143f1881e655bebca1312722af8068de235ae5dc", + "reference": "143f1881e655bebca1312722af8068de235ae5dc", "shasum": "" }, "require": { @@ -3458,7 +3457,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3497,7 +3496,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-iconv/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-iconv/tree/v1.26.0" }, "funding": [ { @@ -3513,20 +3512,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354" + "reference": "433d05519ce6990bf3530fba6957499d327395c2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-grapheme/zipball/433d05519ce6990bf3530fba6957499d327395c2", + "reference": "433d05519ce6990bf3530fba6957499d327395c2", "shasum": "" }, "require": { @@ -3538,7 +3537,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3578,7 +3577,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.26.0" }, "funding": [ { @@ -3594,20 +3593,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "639084e360537a19f9ee352433b84ce831f3d2da" + "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-idn/zipball/639084e360537a19f9ee352433b84ce831f3d2da", - "reference": "639084e360537a19f9ee352433b84ce831f3d2da", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-idn/zipball/59a8d271f00dd0e4c2e518104cc7963f655a1aa8", + "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8", "shasum": "" }, "require": { @@ -3621,7 +3620,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3665,7 +3664,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.26.0" }, "funding": [ { @@ -3681,20 +3680,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" + "reference": "219aa369ceff116e673852dce47c3a41794c14bd" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-normalizer/zipball/219aa369ceff116e673852dce47c3a41794c14bd", + "reference": "219aa369ceff116e673852dce47c3a41794c14bd", "shasum": "" }, "require": { @@ -3706,7 +3705,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3749,7 +3748,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.26.0" }, "funding": [ { @@ -3765,20 +3764,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" + "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "url": "https://github.com/gitapi/repos/symfony/polyfill-mbstring/zipball/9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", + "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", "shasum": "" }, "require": { @@ -3793,7 +3792,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3832,7 +3831,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.26.0" }, "funding": [ { @@ -3848,20 +3847,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/polyfill-php72", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "869329b1e9894268a8a61dabb69153029b7a8c97" + "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php72/zipball/869329b1e9894268a8a61dabb69153029b7a8c97", - "reference": "869329b1e9894268a8a61dabb69153029b7a8c97", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php72/zipball/bf44a9fd41feaac72b074de600314a93e2ae78e2", + "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2", "shasum": "" }, "require": { @@ -3870,7 +3869,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3908,7 +3907,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php72/tree/v1.26.0" }, "funding": [ { @@ -3924,20 +3923,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" + "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php73/zipball/e440d35fa0286f77fb45b79a03fedbeda9307e85", + "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85", "shasum": "" }, "require": { @@ -3946,7 +3945,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3987,7 +3986,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.26.0" }, "funding": [ { @@ -4003,20 +4002,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" + "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php80/zipball/cfa0ae98841b9e461207c13ab093d76b0fa7bace", + "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace", "shasum": "" }, "require": { @@ -4025,7 +4024,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4070,7 +4069,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.26.0" }, "funding": [ { @@ -4086,20 +4085,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-10T07:21:04+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.27.0", + "version": "v1.26.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" + "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", - "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php81/zipball/13f6d1271c663dc5ae9fb843a8f16521db7687a1", + "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1", "shasum": "" }, "require": { @@ -4108,7 +4107,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.26-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4149,7 +4148,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.26.0" }, "funding": [ { @@ -4165,7 +4164,7 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2022-05-24T11:49:31+00:00" }, { "name": "symfony/process", @@ -4231,16 +4230,16 @@ }, { "name": "symfony/routing", - "version": "v5.4.15", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "5c9b129efe9abce9470e384bf65d8a7e262eee69" + "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/routing/zipball/5c9b129efe9abce9470e384bf65d8a7e262eee69", - "reference": "5c9b129efe9abce9470e384bf65d8a7e262eee69", + "url": "https://github.com/gitapi/repos/symfony/routing/zipball/3e01ccd9b2a3a4167ba2b3c53612762300300226", + "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226", "shasum": "" }, "require": { @@ -4301,7 +4300,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v5.4.15" + "source": "https://github.com/symfony/routing/tree/v5.4.11" }, "funding": [ { @@ -4317,7 +4316,7 @@ "type": "tidelift" } ], - "time": "2022-10-13T14:10:41+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/service-contracts", @@ -4404,16 +4403,16 @@ }, { "name": "symfony/string", - "version": "v5.4.15", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "571334ce9f687e3e6af72db4d3b2a9431e4fd9ed" + "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/string/zipball/571334ce9f687e3e6af72db4d3b2a9431e4fd9ed", - "reference": "571334ce9f687e3e6af72db4d3b2a9431e4fd9ed", + "url": "https://github.com/gitapi/repos/symfony/string/zipball/2fc515e512d721bf31ea76bd02fe23ada4640058", + "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058", "shasum": "" }, "require": { @@ -4470,7 +4469,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.15" + "source": "https://github.com/symfony/string/tree/v5.4.12" }, "funding": [ { @@ -4486,20 +4485,20 @@ "type": "tidelift" } ], - "time": "2022-10-05T15:16:54+00:00" + "time": "2022-08-12T17:03:11+00:00" }, { "name": "symfony/translation", - "version": "v5.4.14", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "f0ed07675863aa6e3939df8b1bc879450b585cab" + "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/translation/zipball/f0ed07675863aa6e3939df8b1bc879450b585cab", - "reference": "f0ed07675863aa6e3939df8b1bc879450b585cab", + "url": "https://github.com/gitapi/repos/symfony/translation/zipball/42ecc77eb4f229ce2df702a648ec93b8478d76ae", + "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae", "shasum": "" }, "require": { @@ -4567,7 +4566,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.14" + "source": "https://github.com/symfony/translation/tree/v5.4.12" }, "funding": [ { @@ -4583,7 +4582,7 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:01:20+00:00" + "time": "2022-08-02T15:52:22+00:00" }, { "name": "symfony/translation-contracts", @@ -4665,16 +4664,16 @@ }, { "name": "symfony/var-dumper", - "version": "v5.4.14", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "6894d06145fefebd9a4c7272baa026a1c394a430" + "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/6894d06145fefebd9a4c7272baa026a1c394a430", - "reference": "6894d06145fefebd9a4c7272baa026a1c394a430", + "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/b8f306d7b8ef34fb3db3305be97ba8e088fb4861", + "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861", "shasum": "" }, "require": { @@ -4734,7 +4733,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.4.14" + "source": "https://github.com/symfony/var-dumper/tree/v5.4.11" }, "funding": [ { @@ -4750,7 +4749,7 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:01:20+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -4807,16 +4806,16 @@ }, { "name": "vlucas/phpdotenv", - "version": "v5.5.0", + "version": "v5.4.1", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7" + "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vlucas/phpdotenv/zipball/1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", - "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", + "url": "https://github.com/gitapi/repos/vlucas/phpdotenv/zipball/264dce589e7ce37a7ba99cb901eed8249fbec92f", + "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f", "shasum": "" }, "require": { @@ -4831,19 +4830,15 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.4.1", "ext-filter": "*", - "phpunit/phpunit": "^7.5.20 || ^8.5.30 || ^9.5.25" + "phpunit/phpunit": "^7.5.20 || ^8.5.21 || ^9.5.10" }, "suggest": { "ext-filter": "Required to use the boolean validator." }, "type": "library", "extra": { - "bamarni-bin": { - "bin-links": true, - "forward-command": true - }, "branch-alias": { - "dev-master": "5.5-dev" + "dev-master": "5.4-dev" } }, "autoload": { @@ -4875,7 +4870,7 @@ ], "support": { "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.5.0" + "source": "https://github.com/vlucas/phpdotenv/tree/v5.4.1" }, "funding": [ { @@ -4887,7 +4882,7 @@ "type": "tidelift" } ], - "time": "2022-10-16T01:01:54+00:00" + "time": "2021-12-12T23:22:04+00:00" }, { "name": "voku/portable-ascii", @@ -5089,9 +5084,8 @@ "serialization" ], "support": { - "source": "https://github.com/wikimedia/avro-php/tree/v1.9.0" + "source": "https://github.com/wikimedia/avro-php/tree/master" }, - "abandoned": "rg/avro-php", "time": "2019-09-16T15:18:39+00:00" } ], @@ -5715,16 +5709,16 @@ }, { "name": "composer/pcre", - "version": "3.1.0", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" + "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", - "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", + "url": "https://github.com/gitapi/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", "shasum": "" }, "require": { @@ -5766,7 +5760,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.1.0" + "source": "https://github.com/composer/pcre/tree/3.0.0" }, "funding": [ { @@ -5782,7 +5776,7 @@ "type": "tidelift" } ], - "time": "2022-11-17T09:50:14+00:00" + "time": "2022-02-25T20:21:48+00:00" }, { "name": "composer/semver", @@ -6090,16 +6084,16 @@ }, { "name": "doctrine/collections", - "version": "1.8.0", + "version": "1.7.3", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e" + "reference": "09dde3eb237756190f2de738d3c97cff10a8407b" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/2b44dd4cbca8b5744327de78bafef5945c7e7b5e", - "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e", + "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/09dde3eb237756190f2de738d3c97cff10a8407b", + "reference": "09dde3eb237756190f2de738d3c97cff10a8407b", "shasum": "" }, "require": { @@ -6154,9 +6148,9 @@ ], "support": { "issues": "https://github.com/doctrine/collections/issues", - "source": "https://github.com/doctrine/collections/tree/1.8.0" + "source": "https://github.com/doctrine/collections/tree/1.7.3" }, - "time": "2022-09-01T20:12:10+00:00" + "time": "2022-09-01T19:34:23+00:00" }, { "name": "doctrine/deprecations", @@ -6273,20 +6267,20 @@ }, { "name": "fakerphp/faker", - "version": "v1.21.0", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" + "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", - "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", + "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/37f751c67a5372d4e26353bd9384bc03744ec77b", + "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b", "shasum": "" }, "require": { - "php": "^7.4 || ^8.0", + "php": "^7.1 || ^8.0", "psr/container": "^1.0 || ^2.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" }, @@ -6297,8 +6291,7 @@ "bamarni/composer-bin-plugin": "^1.4.1", "doctrine/persistence": "^1.3 || ^2.0", "ext-intl": "*", - "phpunit/phpunit": "^9.5.26", - "symfony/phpunit-bridge": "^5.4.16" + "symfony/phpunit-bridge": "^4.4 || ^5.2" }, "suggest": { "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", @@ -6310,7 +6303,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v1.21-dev" + "dev-main": "v1.20-dev" } }, "autoload": { @@ -6335,9 +6328,9 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.21.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.20.0" }, - "time": "2022-12-13T13:54:32+00:00" + "time": "2022-07-20T13:12:54+00:00" }, { "name": "felixfbecker/advanced-json-rpc", @@ -6442,16 +6435,16 @@ }, { "name": "gitonomy/gitlib", - "version": "v1.3.7", + "version": "v1.3.6", "source": { "type": "git", "url": "https://github.com/gitonomy/gitlib.git", - "reference": "00b57b79f02396aa4c7c163f76fe2bc48faebbb7" + "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/00b57b79f02396aa4c7c163f76fe2bc48faebbb7", - "reference": "00b57b79f02396aa4c7c163f76fe2bc48faebbb7", + "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/33ae0a2e469accc19d1a06bed63ed93dbf368ae2", + "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2", "shasum": "" }, "require": { @@ -6462,7 +6455,6 @@ }, "require-dev": { "ext-fileinfo": "*", - "phpspec/prophecy": "^1.10.2", "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.20 || ^9.5.9", "psr/log": "^1.0" }, @@ -6505,7 +6497,7 @@ "description": "Library for accessing git", "support": { "issues": "https://github.com/gitonomy/gitlib/issues", - "source": "https://github.com/gitonomy/gitlib/tree/v1.3.7" + "source": "https://github.com/gitonomy/gitlib/tree/v1.3.6" }, "funding": [ { @@ -6513,7 +6505,7 @@ "type": "tidelift" } ], - "time": "2022-10-04T14:20:15+00:00" + "time": "2022-08-05T09:17:13+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -6784,16 +6776,16 @@ }, { "name": "netresearch/jsonmapper", - "version": "v4.1.0", + "version": "v4.0.0", "source": { "type": "git", "url": "https://github.com/cweiske/jsonmapper.git", - "reference": "cfa81ea1d35294d64adb9c68aa4cb9e92400e53f" + "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/cweiske/jsonmapper/zipball/cfa81ea1d35294d64adb9c68aa4cb9e92400e53f", - "reference": "cfa81ea1d35294d64adb9c68aa4cb9e92400e53f", + "url": "https://github.com/gitapi/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", + "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", "shasum": "" }, "require": { @@ -6829,22 +6821,22 @@ "support": { "email": "cweiske@cweiske.de", "issues": "https://github.com/cweiske/jsonmapper/issues", - "source": "https://github.com/cweiske/jsonmapper/tree/v4.1.0" + "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0" }, - "time": "2022-12-08T20:46:14+00:00" + "time": "2020-12-01T19:48:11+00:00" }, { "name": "nikic/php-parser", - "version": "v4.15.2", + "version": "v4.15.1", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc" + "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", - "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", + "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", + "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", "shasum": "" }, "require": { @@ -6885,9 +6877,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.2" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.1" }, - "time": "2022-11-12T15:38:23+00:00" + "time": "2022-09-04T07:30:47+00:00" }, { "name": "ondram/ci-detector", @@ -7022,22 +7014,22 @@ }, { "name": "orchestra/testbench", - "version": "v6.25.1", + "version": "v6.25.0", "source": { "type": "git", "url": "https://github.com/orchestral/testbench.git", - "reference": "0516123d26d64117bc04f7e9cb982eae2624e750" + "reference": "a65b90b78caed1fdface168ca02af34f3422e513" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/0516123d26d64117bc04f7e9cb982eae2624e750", - "reference": "0516123d26d64117bc04f7e9cb982eae2624e750", + "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/a65b90b78caed1fdface168ca02af34f3422e513", + "reference": "a65b90b78caed1fdface168ca02af34f3422e513", "shasum": "" }, "require": { "laravel/framework": "^8.75", "mockery/mockery": "^1.4.4", - "orchestra/testbench-core": "^6.29.1", + "orchestra/testbench-core": "^6.29", "php": "^7.3 || ^8.0", "phpunit/phpunit": "^8.5.21 || ^9.5.10", "spatie/laravel-ray": "^1.26.2" @@ -7071,7 +7063,7 @@ ], "support": { "issues": "https://github.com/orchestral/testbench/issues", - "source": "https://github.com/orchestral/testbench/tree/v6.25.1" + "source": "https://github.com/orchestral/testbench/tree/v6.25.0" }, "funding": [ { @@ -7083,20 +7075,20 @@ "type": "liberapay" } ], - "time": "2022-10-11T14:01:10+00:00" + "time": "2022-08-24T01:41:23+00:00" }, { "name": "orchestra/testbench-core", - "version": "v6.29.1", + "version": "v6.29.0", "source": { "type": "git", "url": "https://github.com/orchestral/testbench-core.git", - "reference": "29a7586915885f89b8d2203efe20f76afe9cf956" + "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/29a7586915885f89b8d2203efe20f76afe9cf956", - "reference": "29a7586915885f89b8d2203efe20f76afe9cf956", + "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/8eeace7d979a7905e6fab77a30a3b05da99459c4", + "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4", "shasum": "" }, "require": { @@ -7173,7 +7165,7 @@ "type": "liberapay" } ], - "time": "2022-10-11T12:12:52+00:00" + "time": "2022-08-24T00:15:20+00:00" }, { "name": "phar-io/manifest", @@ -7398,30 +7390,25 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.6.2", + "version": "1.6.1", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d" + "reference": "77a32518733312af16a44300404e945338981de3" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpDocumentor/TypeResolver/zipball/48f445a408c131e38cab1c235aa6d2bb7a0bb20d", - "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d", + "url": "https://github.com/gitapi/repos/phpDocumentor/TypeResolver/zipball/77a32518733312af16a44300404e945338981de3", + "reference": "77a32518733312af16a44300404e945338981de3", "shasum": "" }, "require": { - "php": "^7.4 || ^8.0", + "php": "^7.2 || ^8.0", "phpdocumentor/reflection-common": "^2.0" }, "require-dev": { "ext-tokenizer": "*", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan": "^1.8", - "phpstan/phpstan-phpunit": "^1.1", - "phpunit/phpunit": "^9.5", - "rector/rector": "^0.13.9", - "vimeo/psalm": "^4.25" + "psalm/phar": "^4.8" }, "type": "library", "extra": { @@ -7447,9 +7434,9 @@ "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.6.2" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.1" }, - "time": "2022-10-14T12:47:21+00:00" + "time": "2022-03-15T21:29:03+00:00" }, { "name": "phpro/grumphp", @@ -7569,16 +7556,16 @@ }, { "name": "phpstan/phpdoc-parser", - "version": "1.15.2", + "version": "1.8.0", "source": { "type": "git", "url": "https://github.com/phpstan/phpdoc-parser.git", - "reference": "5941477f100993652218928039d530b75a13a9ca" + "reference": "8dd908dd6156e974b9a0f8bb4cd5ad0707830f04" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpstan/phpdoc-parser/zipball/5941477f100993652218928039d530b75a13a9ca", - "reference": "5941477f100993652218928039d530b75a13a9ca", + "url": "https://github.com/gitapi/repos/phpstan/phpdoc-parser/zipball/8dd908dd6156e974b9a0f8bb4cd5ad0707830f04", + "reference": "8dd908dd6156e974b9a0f8bb4cd5ad0707830f04", "shasum": "" }, "require": { @@ -7608,22 +7595,81 @@ "description": "PHPDoc parser with support for nullable, intersection and generic types", "support": { "issues": "https://github.com/phpstan/phpdoc-parser/issues", - "source": "https://github.com/phpstan/phpdoc-parser/tree/1.15.2" + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.8.0" + }, + "time": "2022-09-04T18:59:06+00:00" + }, + { + "name": "phpstan/phpstan", + "version": "1.8.5", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpstan.git", + "reference": "f6598a5ff12ca4499a836815e08b4d77a2ddeb20" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/phpstan/phpstan/zipball/f6598a5ff12ca4499a836815e08b4d77a2ddeb20", + "reference": "f6598a5ff12ca4499a836815e08b4d77a2ddeb20", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0" + }, + "conflict": { + "phpstan/phpstan-shim": "*" + }, + "bin": [ + "phpstan", + "phpstan.phar" + ], + "type": "library", + "autoload": { + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPStan - PHP Static Analysis Tool", + "keywords": [ + "dev", + "static analysis" + ], + "support": { + "issues": "https://github.com/phpstan/phpstan/issues", + "source": "https://github.com/phpstan/phpstan/tree/1.8.5" }, - "time": "2022-12-16T06:42:48+00:00" + "funding": [ + { + "url": "https://github.com/ondrejmirtes", + "type": "github" + }, + { + "url": "https://github.com/phpstan", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan", + "type": "tidelift" + } + ], + "time": "2022-09-07T16:05:32+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.22", + "version": "9.2.17", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "e4bf60d2220b4baaa0572986b5d69870226b06df" + "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/e4bf60d2220b4baaa0572986b5d69870226b06df", - "reference": "e4bf60d2220b4baaa0572986b5d69870226b06df", + "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/aa94dc41e8661fe90c7316849907cba3007b10d8", + "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8", "shasum": "" }, "require": { @@ -7679,7 +7725,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.22" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.17" }, "funding": [ { @@ -7687,7 +7733,7 @@ "type": "github" } ], - "time": "2022-12-18T16:40:55+00:00" + "time": "2022-08-30T12:24:04+00:00" }, { "name": "phpunit/php-file-iterator", @@ -7932,16 +7978,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.27", + "version": "9.5.24", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38" + "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/a2bc7ffdca99f92d959b3f2270529334030bba38", - "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38", + "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", + "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", "shasum": "" }, "require": { @@ -7963,14 +8009,14 @@ "phpunit/php-timer": "^5.0.2", "sebastian/cli-parser": "^1.0.1", "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.8", + "sebastian/comparator": "^4.0.5", "sebastian/diff": "^4.0.3", "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.5", + "sebastian/exporter": "^4.0.3", "sebastian/global-state": "^5.0.1", "sebastian/object-enumerator": "^4.0.3", "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.2", + "sebastian/type": "^3.1", "sebastian/version": "^3.0.2" }, "suggest": { @@ -8014,7 +8060,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.27" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.24" }, "funding": [ { @@ -8024,13 +8070,9 @@ { "url": "https://github.com/sebastianbergmann", "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", - "type": "tidelift" } ], - "time": "2022-12-09T07:31:23+00:00" + "time": "2022-08-30T07:42:16+00:00" }, { "name": "pimple/pimple", @@ -8139,6 +8181,66 @@ }, "time": "2021-11-27T18:46:32+00:00" }, + { + "name": "rector/rector", + "version": "0.13.10", + "source": { + "type": "git", + "url": "https://github.com/rectorphp/rector.git", + "reference": "d1e069db8ad3b4aea2b968248370c21415e4c180" + }, + "dist": { + "type": "zip", + "url": "https://github.com/gitapi/repos/rectorphp/rector/zipball/d1e069db8ad3b4aea2b968248370c21415e4c180", + "reference": "d1e069db8ad3b4aea2b968248370c21415e4c180", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0", + "phpstan/phpstan": "^1.8.2" + }, + "conflict": { + "phpstan/phpdoc-parser": "<1.6.2", + "rector/rector-cakephp": "*", + "rector/rector-doctrine": "*", + "rector/rector-laravel": "*", + "rector/rector-nette": "*", + "rector/rector-phpoffice": "*", + "rector/rector-phpunit": "*", + "rector/rector-prefixed": "*", + "rector/rector-symfony": "*" + }, + "bin": [ + "bin/rector" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.13-dev" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Instant Upgrade and Automated Refactoring of any PHP code", + "support": { + "issues": "https://github.com/rectorphp/rector/issues", + "source": "https://github.com/rectorphp/rector/tree/0.13.10" + }, + "funding": [ + { + "url": "https://github.com/tomasvotruba", + "type": "github" + } + ], + "time": "2022-08-03T12:48:10+00:00" + }, { "name": "sebastian/cli-parser", "version": "1.0.1", @@ -9636,16 +9738,16 @@ }, { "name": "symfony/dependency-injection", - "version": "v5.4.16", + "version": "v5.4.11", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "a93e1863500940780fc1235f52d54397be2d14b3" + "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a93e1863500940780fc1235f52d54397be2d14b3", - "reference": "a93e1863500940780fc1235f52d54397be2d14b3", + "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a8b9251016e9476db73e25fa836904bc0bf74c62", + "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62", "shasum": "" }, "require": { @@ -9705,7 +9807,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v5.4.16" + "source": "https://github.com/symfony/dependency-injection/tree/v5.4.11" }, "funding": [ { @@ -9721,7 +9823,7 @@ "type": "tidelift" } ], - "time": "2022-11-25T07:33:13+00:00" + "time": "2022-07-20T13:00:38+00:00" }, { "name": "symfony/dotenv", @@ -9796,16 +9898,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.13", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "ac09569844a9109a5966b9438fc29113ce77cf51" + "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/ac09569844a9109a5966b9438fc29113ce77cf51", - "reference": "ac09569844a9109a5966b9438fc29113ce77cf51", + "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/2d67c1f9a1937406a9be3171b4b22250c0a11447", + "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447", "shasum": "" }, "require": { @@ -9840,7 +9942,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.13" + "source": "https://github.com/symfony/filesystem/tree/v5.4.12" }, "funding": [ { @@ -9856,7 +9958,7 @@ "type": "tidelift" } ], - "time": "2022-09-21T19:53:16+00:00" + "time": "2022-08-02T13:48:16+00:00" }, { "name": "symfony/options-resolver", @@ -9929,16 +10031,16 @@ }, { "name": "symfony/stopwatch", - "version": "v5.4.13", + "version": "v5.4.5", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "6df7a3effde34d81717bbef4591e5ffe32226d69" + "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/stopwatch/zipball/6df7a3effde34d81717bbef4591e5ffe32226d69", - "reference": "6df7a3effde34d81717bbef4591e5ffe32226d69", + "url": "https://github.com/gitapi/repos/symfony/stopwatch/zipball/4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", + "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", "shasum": "" }, "require": { @@ -9971,7 +10073,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.13" + "source": "https://github.com/symfony/stopwatch/tree/v5.4.5" }, "funding": [ { @@ -9987,20 +10089,20 @@ "type": "tidelift" } ], - "time": "2022-09-28T13:19:49+00:00" + "time": "2022-02-18T16:06:09+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.16", + "version": "v5.4.12", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "ebd37c71f62d5ec5f6e27de3e06fee492d4c6298" + "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/ebd37c71f62d5ec5f6e27de3e06fee492d4c6298", - "reference": "ebd37c71f62d5ec5f6e27de3e06fee492d4c6298", + "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", + "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", "shasum": "" }, "require": { @@ -10046,7 +10148,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.16" + "source": "https://github.com/symfony/yaml/tree/v5.4.12" }, "funding": [ { @@ -10062,7 +10164,7 @@ "type": "tidelift" } ], - "time": "2022-11-25T16:04:03+00:00" + "time": "2022-08-02T15:52:22+00:00" }, { "name": "theseer/tokenizer", @@ -10116,16 +10218,16 @@ }, { "name": "vimeo/psalm", - "version": "4.30.0", + "version": "4.27.0", "source": { "type": "git", "url": "https://github.com/vimeo/psalm.git", - "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69" + "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/d0bc6e25d89f649e4f36a534f330f8bb4643dd69", - "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69", + "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/faf106e717c37b8c81721845dba9de3d8deed8ff", + "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff", "shasum": "" }, "require": { @@ -10164,7 +10266,6 @@ "phpdocumentor/reflection-docblock": "^5", "phpmyadmin/sql-parser": "5.1.0||dev-master", "phpspec/prophecy": ">=1.9.0", - "phpstan/phpdoc-parser": "1.2.* || 1.6.4", "phpunit/phpunit": "^9.0", "psalm/plugin-phpunit": "^0.16", "slevomat/coding-standard": "^7.0", @@ -10218,9 +10319,9 @@ ], "support": { "issues": "https://github.com/vimeo/psalm/issues", - "source": "https://github.com/vimeo/psalm/tree/4.30.0" + "source": "https://github.com/vimeo/psalm/tree/4.27.0" }, - "time": "2022-11-06T20:37:08+00:00" + "time": "2022-08-31T13:47:09+00:00" }, { "name": "webmozart/path-util", @@ -10275,16 +10376,16 @@ }, { "name": "zbateson/mail-mime-parser", - "version": "2.2.3", + "version": "2.2.2", "source": { "type": "git", "url": "https://github.com/zbateson/mail-mime-parser.git", - "reference": "295c7f82a8c44af685680d9df6714beb812e90ff" + "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/295c7f82a8c44af685680d9df6714beb812e90ff", - "reference": "295c7f82a8c44af685680d9df6714beb812e90ff", + "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/318cd809afebe48e8fb41625b05b25470fb3fa86", + "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86", "shasum": "" }, "require": { @@ -10344,7 +10445,7 @@ "type": "github" } ], - "time": "2022-09-28T16:31:49+00:00" + "time": "2022-09-01T15:59:13+00:00" }, { "name": "zbateson/mb-wrapper", From f29b02210bd895341cd7cebdb5a9852894dc52eb Mon Sep 17 00:00:00 2001 From: williancs Date: Tue, 20 Sep 2022 16:55:14 -0300 Subject: [PATCH 20/28] chore(phpcs): adjust code standard --- src/Record/ConsumerRecord.php | 1 - src/Record/ProducerRecord.php | 3 --- src/TopicHandler/Producer/AbstractHandler.php | 1 - src/TopicHandler/Producer/AbstractProducer.php | 1 - tests/Integration/ProducerTest.php | 4 +++- 5 files changed, 3 insertions(+), 7 deletions(-) diff --git a/src/Record/ConsumerRecord.php b/src/Record/ConsumerRecord.php index bdc2f342..3410d5c3 100644 --- a/src/Record/ConsumerRecord.php +++ b/src/Record/ConsumerRecord.php @@ -21,7 +21,6 @@ class ConsumerRecord implements RecordInterface /** * @var mixed - * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingNativeTypeHint */ protected $payload; diff --git a/src/Record/ProducerRecord.php b/src/Record/ProducerRecord.php index 44868930..ff3582a1 100644 --- a/src/Record/ProducerRecord.php +++ b/src/Record/ProducerRecord.php @@ -8,13 +8,11 @@ class ProducerRecord implements RecordInterface * The message after any transformations that will be send to the topic. * * @var mixed - * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingNativeTypeHint */ protected $payload; /** * @var mixed|null - * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingNativeTypeHint */ protected $key; @@ -28,7 +26,6 @@ class ProducerRecord implements RecordInterface * Original message before passed by any kind of transformations. * * @var mixed - * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingNativeTypeHint */ protected $original; diff --git a/src/TopicHandler/Producer/AbstractHandler.php b/src/TopicHandler/Producer/AbstractHandler.php index 81a91bd2..f2866ff8 100644 --- a/src/TopicHandler/Producer/AbstractHandler.php +++ b/src/TopicHandler/Producer/AbstractHandler.php @@ -12,7 +12,6 @@ abstract class AbstractHandler implements HandlerInterface { /** * @var mixed - * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingNativeTypeHint */ protected $record; diff --git a/src/TopicHandler/Producer/AbstractProducer.php b/src/TopicHandler/Producer/AbstractProducer.php index 101ef973..e95a6f63 100644 --- a/src/TopicHandler/Producer/AbstractProducer.php +++ b/src/TopicHandler/Producer/AbstractProducer.php @@ -10,7 +10,6 @@ class AbstractProducer implements HandlerInterface { /** * @var mixed - * @phpcsSuppress SlevomatCodingStandard.TypeHints.PropertyTypeHint.MissingNativeTypeHint */ protected $record; diff --git a/tests/Integration/ProducerTest.php b/tests/Integration/ProducerTest.php index ce6f76b0..61c384a8 100644 --- a/tests/Integration/ProducerTest.php +++ b/tests/Integration/ProducerTest.php @@ -182,6 +182,8 @@ private function haveFourProducedMessages(): void private function haveNoPartitionConfigured(): void { - config(['kafka.topics.default.consumer.consumer_groups.test-consumer-group.partition' => -1]); + config( + ['kafka.topics.default.consumer.consumer_groups.test-consumer-group.partition' => -1] + ); } } From 67058211945c5ba6abd2e69f1457e0e6f1437e71 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Wed, 21 Sep 2022 11:03:31 -0300 Subject: [PATCH 21/28] test: add partition, offset and headers fields on log middleware test --- tests/Unit/Middlewares/LogTest.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/Unit/Middlewares/LogTest.php b/tests/Unit/Middlewares/LogTest.php index ab7b7e9c..5569e383 100644 --- a/tests/Unit/Middlewares/LogTest.php +++ b/tests/Unit/Middlewares/LogTest.php @@ -32,9 +32,12 @@ public function testItShouldLogMessage(): void 'err' => RD_KAFKA_RESP_ERR_NO_ERROR, 'topic_name' => null, 'timestamp' => null, + 'partition' => null, 'payload' => 'original record', 'len' => null, 'key' => null, + 'offset' => null, + 'headers' => null, 'opaque' => null, ], ]); From c95029979e82ffcfdb64aa6256184de3320b5a9a Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Wed, 21 Sep 2022 14:41:12 -0300 Subject: [PATCH 22/28] chore(producer): set topic parameter as required on deprecated abstract handler --- src/TopicHandler/Producer/AbstractHandler.php | 2 +- tests/Integration/Dummies/MessageProducer.php | 4 ++-- tests/Integration/ProducerTest.php | 9 ++++++--- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/TopicHandler/Producer/AbstractHandler.php b/src/TopicHandler/Producer/AbstractHandler.php index f2866ff8..5161c82a 100644 --- a/src/TopicHandler/Producer/AbstractHandler.php +++ b/src/TopicHandler/Producer/AbstractHandler.php @@ -21,7 +21,7 @@ abstract class AbstractHandler implements HandlerInterface protected ?int $partition; - public function __construct($record, ?string $topic = null, ?string $key = null, ?int $partition = null) + public function __construct($record, string $topic, ?string $key = null, ?int $partition = null) { $this->record = $record; $this->topic = $topic; diff --git a/tests/Integration/Dummies/MessageProducer.php b/tests/Integration/Dummies/MessageProducer.php index 01d9b1d6..22aac6f8 100644 --- a/tests/Integration/Dummies/MessageProducer.php +++ b/tests/Integration/Dummies/MessageProducer.php @@ -11,10 +11,10 @@ class MessageProducer extends AbstractHandler { public string $topic = 'default'; - public function __construct($record, ?string $topic = null, ?string $key = null, ?int $partition = null) + public function __construct($record, string $topic, ?string $key = null, ?int $partition = null) { $this->record = $record; - $this->topic = $topic ?? 'default'; + $this->topic = $topic; $this->key = $key ?? 'recordId123'; $this->partition = $partition; } diff --git a/tests/Integration/ProducerTest.php b/tests/Integration/ProducerTest.php index 61c384a8..f7d13966 100644 --- a/tests/Integration/ProducerTest.php +++ b/tests/Integration/ProducerTest.php @@ -130,7 +130,10 @@ private function haveSomeRandomMessagesProduced(): void $this->highLevelMessage = Str::random(10); $producer = app( MessageProducer::class, - ['record' => $this->highLevelMessage] + [ + 'record' => $this->highLevelMessage, + 'topic' => 'default', + ] ); Metamorphosis::produce($producer); @@ -139,8 +142,8 @@ private function haveSomeRandomMessagesProduced(): void private function produceRecordMessage(string $record): string { - $producer = app(MessageProducer::class, compact('record')); - $producer->topic = 'low_level'; + $topic = 'low_level'; + $producer = app(MessageProducer::class, compact('record', 'topic')); Metamorphosis::produce($producer); Metamorphosis::produce($producer); From d6d29cdeb0efc471d6dd06aa1ddb259a98931e3f Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Wed, 21 Sep 2022 17:33:00 -0300 Subject: [PATCH 23/28] fix: type decoder property as MessageDecoder on AvroSchemaDecoder middleware --- src/Middlewares/AvroSchemaDecoder.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Middlewares/AvroSchemaDecoder.php b/src/Middlewares/AvroSchemaDecoder.php index 778d72ed..4ae626c9 100644 --- a/src/Middlewares/AvroSchemaDecoder.php +++ b/src/Middlewares/AvroSchemaDecoder.php @@ -5,14 +5,13 @@ use Closure; use Metamorphosis\AbstractConfigManager; use Metamorphosis\Avro\ClientFactory; -use Metamorphosis\Avro\Serializer\Decoders\DecoderInterface; use Metamorphosis\Avro\Serializer\MessageDecoder; use Metamorphosis\Exceptions\ConfigurationException; use Metamorphosis\Record\RecordInterface; class AvroSchemaDecoder implements MiddlewareInterface { - private DecoderInterface $decoder; + private MessageDecoder $decoder; private AbstractConfigManager $configManager; From 19908b43cfa4f8f5fd01bd802324865cb943f2cc Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Thu, 22 Sep 2022 09:44:59 -0300 Subject: [PATCH 24/28] fix(consumer): initialize configOptions with null some projects does not call parent::__construct(), leaving the property uninitialized, throwing an error --- src/TopicHandler/Consumer/AbstractHandler.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/TopicHandler/Consumer/AbstractHandler.php b/src/TopicHandler/Consumer/AbstractHandler.php index 461fa0c1..2d5d51da 100644 --- a/src/TopicHandler/Consumer/AbstractHandler.php +++ b/src/TopicHandler/Consumer/AbstractHandler.php @@ -12,7 +12,7 @@ abstract class AbstractHandler implements Handler * Merge and override config from kafka file. * */ - private ?ConsumerConfigOptions $configOptions; + private ?ConsumerConfigOptions $configOptions = null; public function __construct(?ConsumerConfigOptions $configOptions = null) { From 31ab35e3abb3d4266711f0b3fefb309445189fa2 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Thu, 22 Sep 2022 14:33:26 -0300 Subject: [PATCH 25/28] chore(ci): improve tests to cover php versions higher than 7.4 --- .editorconfig | 8 ++ .github/workflows/continuous-integration.yml | 86 +++++++++++++++++++ .github/workflows/push.yml | 22 ----- config/kafka.php | 2 +- docker/Dockerfile | 2 +- phpcs.xml | 6 ++ psalm-baseline.xml | 24 ++++++ psalm.xml | 4 +- tests/Integration/ConsumerTest.php | 3 +- tests/Integration/ProducerWithAvroTest.php | 5 +- .../ProducerWithConfigOptionsTest.php | 9 +- .../Unit/Connectors/Consumer/FactoryTest.php | 3 +- .../Connectors/Consumer/HighLevelTest.php | 3 +- .../Unit/Connectors/Consumer/LowLevelTest.php | 3 +- tests/Unit/Connectors/Producer/ConfigTest.php | 16 ++-- tests/Unit/Console/ConsumerCommandTest.php | 5 +- tests/Unit/Middlewares/LogTest.php | 40 ++++++--- tests/Unit/ProducerTest.php | 3 +- 18 files changed, 188 insertions(+), 56 deletions(-) create mode 100644 .github/workflows/continuous-integration.yml delete mode 100644 .github/workflows/push.yml create mode 100644 psalm-baseline.xml diff --git a/.editorconfig b/.editorconfig index 3b0bc951..6cbeb8bc 100644 --- a/.editorconfig +++ b/.editorconfig @@ -16,3 +16,11 @@ insert_final_newline = true [*.md] trim_trailing_whitespace = false + +[*.yml] +indent_style = space +indent_size = 2 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml new file mode 100644 index 00000000..59efe8d6 --- /dev/null +++ b/.github/workflows/continuous-integration.yml @@ -0,0 +1,86 @@ +name: Continuous Integration + +on: + - push + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + testing: + name: Testing and Code Quality for PHP + runs-on: ubuntu-latest + strategy: + matrix: + php: + - '7.4' + - '8.0' + - '8.1' + env: + KAFKA_BROKER_CONNECTIONS: 'localhost:9092' + services: + zookeeper: + image: bitnami/zookeeper + env: + ALLOW_ANONYMOUS_LOGIN: yes + kafka: + image: bitnami/kafka + ports: + - '9092:9092' + env: + KAFKA_LISTENERS: 'PLAINTEXT://:9092' + KAFKA_CFG_ADVERTISED_LISTENERS: 'PLAINTEXT://localhost:9092' + KAFKA_CFG_ZOOKEEPER_CONNECT: 'zookeeper:2181' + ALLOW_PLAINTEXT_LISTENER: yes + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Setup PHP cache environment + id: php-ext-cache + uses: shivammathur/cache-extensions@v1 + with: + php-version: ${{ matrix.php }} + extensions: rdkafka-arnaud-lb/php-rdkafka@6.0.3 + key: metamorphosis-php-extensions-${{ matrix.php }} + + - name: Cache PHP extensions + uses: actions/cache@v3 + with: + path: ${{ steps.php-ext-cache.outputs.dir }} + key: ${{ steps.php-ext-cache.outputs.key }} + restore-keys: ${{ steps.php-ext-cache.outputs.key }} + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + env: + RDKAFKA_LIBS: librdkafka-dev + with: + php-version: ${{ matrix.php }} + extensions: rdkafka-arnaud-lb/php-rdkafka@6.0.3 + tools: cs2pr + + - name: Cache composer dependencies + uses: actions/cache@v3 + with: + path: vendor + key: metamorphosis-vendor-${{ hashFiles('composer.lock') }} + + - name: Composer + uses: ramsey/composer-install@v2 + + - name: Run code standards + run: vendor/bin/phpcs -q --report=checkstyle | cs2pr + + - name: Run psalm + run: vendor/bin/psalm --php-version=${{ matrix.php }} --output-format=github + + - name: Run tests + run: vendor/bin/phpunit + + - name: Report Coverage + continue-on-error: true + run: CODACY_PROJECT_TOKEN=${{ secrets.CODACY_PROJECT_TOKEN }} bash <(curl -Ls https://coverage.codacy.com/get.sh) report diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml deleted file mode 100644 index 1e1df0f3..00000000 --- a/.github/workflows/push.yml +++ /dev/null @@ -1,22 +0,0 @@ -on: [push] -name: Tests -jobs: - setup-and-tests: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - - name: Build containers - run: docker-compose build --build-arg UID=$(id -u) --build-arg GID=$(id -g) - - - name: Composer install - run: docker-compose run --rm -T php composer install --no-interaction --no-progress - - - name: Run Code Standards - run: docker-compose run --rm -T php vendor/bin/phpcs - - - name: Run Tests - run: docker-compose run --rm -T php vendor/bin/phpunit - - - name: Report Coverage - run: CODACY_PROJECT_TOKEN=${{ secrets.CODACY_PROJECT_TOKEN }} bash <(curl -Ls https://coverage.codacy.com/get.sh) report diff --git a/config/kafka.php b/config/kafka.php index 91ae1500..3e4fe4b9 100644 --- a/config/kafka.php +++ b/config/kafka.php @@ -46,7 +46,7 @@ 'brokers' => [ 'default' => [ - 'connections' => 'kafka:9092', + 'connections' => env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'), // If your broker doest not have authentication, you can // remove this configuration, or set as empty. diff --git a/docker/Dockerfile b/docker/Dockerfile index 8ec727b4..367a3d76 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -11,7 +11,7 @@ RUN cd /tmp \ && make install \ && rm -rf /tmp/* -RUN pecl install rdkafka \ +RUN pecl install rdkafka-6.0.3 \ && docker-php-ext-enable \ rdkafka \ xdebug \ diff --git a/phpcs.xml b/phpcs.xml index 0657ac17..70af07ab 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -23,4 +23,10 @@ tests/*/Dummies/*.php + + src/Record/ConsumerRecord.php + src/Record/ProducerRecord.php + src/TopicHandler/Producer/AbstractHandler.php + src/TopicHandler/Producer/AbstractProducer.php + diff --git a/psalm-baseline.xml b/psalm-baseline.xml new file mode 100644 index 00000000..53af71ca --- /dev/null +++ b/psalm-baseline.xml @@ -0,0 +1,24 @@ + + + + + consumeStart + + + + + mixed + + + + + $this->queue + + + + + $this->queue + $this->queue + + + diff --git a/psalm.xml b/psalm.xml index 3b33c700..001c2d31 100644 --- a/psalm.xml +++ b/psalm.xml @@ -4,7 +4,9 @@ xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd" errorLevel="6" cacheDirectory="storage/psalm/cache" - resolveFromConfigFile="true"> + resolveFromConfigFile="true" + errorBaseline="psalm-baseline.xml" +> diff --git a/tests/Integration/ConsumerTest.php b/tests/Integration/ConsumerTest.php index 6fbb56ea..8c107499 100644 --- a/tests/Integration/ConsumerTest.php +++ b/tests/Integration/ConsumerTest.php @@ -17,7 +17,8 @@ class ConsumerTest extends LaravelTestCase public function testItShouldSetup(): void { // Set - $brokerOptions = new Broker('kafka:9092', new None()); + $connections = env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'); + $brokerOptions = new Broker($connections, new None()); $consumerConfigOptions = new ConsumerConfigOptions( 'single_consumer_test', $brokerOptions, diff --git a/tests/Integration/ProducerWithAvroTest.php b/tests/Integration/ProducerWithAvroTest.php index d76a60b1..449370da 100644 --- a/tests/Integration/ProducerWithAvroTest.php +++ b/tests/Integration/ProducerWithAvroTest.php @@ -31,7 +31,10 @@ protected function haveAHandlerConfigured(): void 'kafka' => [ 'brokers' => [ 'test' => [ - 'connections' => 'kafka:9092', + 'connections' => env( + 'KAFKA_BROKER_CONNECTIONS', + 'kafka:9092' + ), ], ], 'topics' => [ diff --git a/tests/Integration/ProducerWithConfigOptionsTest.php b/tests/Integration/ProducerWithConfigOptionsTest.php index b5935482..3382b590 100644 --- a/tests/Integration/ProducerWithConfigOptionsTest.php +++ b/tests/Integration/ProducerWithConfigOptionsTest.php @@ -25,6 +25,7 @@ public function testShouldRunAProducerMessagesWithConfigOptions(): void // I Expect That $this->myMessagesHaveBeenProduced(); + $this->expectNotToPerformAssertions(); // When I $this->haveSomeRandomMessageProduced(); @@ -44,7 +45,10 @@ protected function runTheConsumer(): void 'kafka_new_config' => [ 'brokers' => [ 'override' => [ - 'connections' => 'kafka:9092', + 'connections' => env( + 'KAFKA_BROKER_CONNECTIONS', + 'kafka:9092' + ), ], ], 'topics' => [ @@ -76,7 +80,8 @@ protected function runTheConsumer(): void protected function haveAHandlerConfigured(): void { - $broker = new Broker('kafka:9092', new None()); + $connections = env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'); + $broker = new Broker($connections, new None()); $this->producerConfigOptions = new ProducerConfigOptions( 'sale_order_override', $broker, diff --git a/tests/Unit/Connectors/Consumer/FactoryTest.php b/tests/Unit/Connectors/Consumer/FactoryTest.php index 5c85d776..a90471d6 100644 --- a/tests/Unit/Connectors/Consumer/FactoryTest.php +++ b/tests/Unit/Connectors/Consumer/FactoryTest.php @@ -57,11 +57,12 @@ protected function setUp(): void { parent::setUp(); + $connections = env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'); config([ 'kafka' => [ 'brokers' => [ 'default' => [ - 'connections' => 'kafka:9092', + 'connections' => $connections, ], ], 'topics' => [ diff --git a/tests/Unit/Connectors/Consumer/HighLevelTest.php b/tests/Unit/Connectors/Consumer/HighLevelTest.php index 1ac5ee83..52d58fc4 100644 --- a/tests/Unit/Connectors/Consumer/HighLevelTest.php +++ b/tests/Unit/Connectors/Consumer/HighLevelTest.php @@ -12,9 +12,10 @@ class HighLevelTest extends LaravelTestCase public function testItShouldMakeConnectorSetup(): void { // Set + $connections = env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'); $configManager = new ConsumerConfigManager(); $configManager->set([ - 'connections' => 'kafka:9092', + 'connections' => $connections, 'consumer_group' => 'some-group', 'topic_id' => 'some_topic', 'offset_reset' => 'earliest', diff --git a/tests/Unit/Connectors/Consumer/LowLevelTest.php b/tests/Unit/Connectors/Consumer/LowLevelTest.php index add4cfce..039d096c 100644 --- a/tests/Unit/Connectors/Consumer/LowLevelTest.php +++ b/tests/Unit/Connectors/Consumer/LowLevelTest.php @@ -12,9 +12,10 @@ class LowLevelTest extends LaravelTestCase public function testItShouldMakeConnectorSetup(): void { // Set + $connections = env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'); $configManager = new ConsumerConfigManager(); $configManager->set([ - 'connections' => 'kafka:9092', + 'connections' => $connections, 'consumer_group' => 'some-group', 'topic' => 'some_topic', 'offset_reset' => 'earliest', diff --git a/tests/Unit/Connectors/Producer/ConfigTest.php b/tests/Unit/Connectors/Producer/ConfigTest.php index f83588a1..82adae08 100644 --- a/tests/Unit/Connectors/Producer/ConfigTest.php +++ b/tests/Unit/Connectors/Producer/ConfigTest.php @@ -26,12 +26,12 @@ public function testShouldValidateProducerConfig(): void 'partition' => -1, 'broker' => 'default', 'topic' => 'default', - 'connections' => 'kafka:9092', + 'connections' => env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'), 'auth' => [ 'type' => 'ssl', - 'ca' => '/var/www/html/vendor/orchestra/testbench-core/laravel/storage/ca.pem', - 'certificate' => '/var/www/html/vendor/orchestra/testbench-core/laravel/storage/kafka.cert', - 'key' => '/var/www/html/vendor/orchestra/testbench-core/laravel/storage/kafka.key', + 'ca' => base_path('storage/ca.pem'), + 'certificate' => base_path('storage/kafka.cert'), + 'key' => base_path('storage/kafka.key'), ], ]; @@ -72,12 +72,12 @@ public function testShouldNotOverrideDefaultParametersWhenConfigIsSet(): void 'flush_attempts' => 10, 'broker' => 'default', 'topic' => 'default', - 'connections' => 'kafka:9092', + 'connections' => env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'), 'auth' => [ 'type' => 'ssl', - 'ca' => '/var/www/html/vendor/orchestra/testbench-core/laravel/storage/ca.pem', - 'certificate' => '/var/www/html/vendor/orchestra/testbench-core/laravel/storage/kafka.cert', - 'key' => '/var/www/html/vendor/orchestra/testbench-core/laravel/storage/kafka.key', + 'ca' => base_path('storage/ca.pem'), + 'certificate' => base_path('storage/kafka.cert'), + 'key' => base_path('storage/kafka.key'), ], ]; diff --git a/tests/Unit/Console/ConsumerCommandTest.php b/tests/Unit/Console/ConsumerCommandTest.php index 233a05ad..26132745 100644 --- a/tests/Unit/Console/ConsumerCommandTest.php +++ b/tests/Unit/Console/ConsumerCommandTest.php @@ -140,7 +140,10 @@ protected function setUp(): void 'kafka' => [ 'brokers' => [ 'default' => [ - 'connections' => 'test_kafka:6680', + 'connections' => env( + 'KAFKA_BROKER_CONNECTIONS', + 'kafka:9092' + ), 'auth' => [], ], ], diff --git a/tests/Unit/Middlewares/LogTest.php b/tests/Unit/Middlewares/LogTest.php index 5569e383..3989f7fe 100644 --- a/tests/Unit/Middlewares/LogTest.php +++ b/tests/Unit/Middlewares/LogTest.php @@ -27,20 +27,32 @@ public function testItShouldLogMessage(): void // Expectations $log->expects() - ->info('Processing kafka record: original record', [ - 'original' => [ - 'err' => RD_KAFKA_RESP_ERR_NO_ERROR, - 'topic_name' => null, - 'timestamp' => null, - 'partition' => null, - 'payload' => 'original record', - 'len' => null, - 'key' => null, - 'offset' => null, - 'headers' => null, - 'opaque' => null, - ], - ]); + ->info('Processing kafka record: original record', m::on( + static function (array $context): bool { + $original = $context['original']; + $expected = [ + 'err' => RD_KAFKA_RESP_ERR_NO_ERROR, + 'topic_name' => null, + 'timestamp' => null, + 'payload' => 'original record', + 'len' => null, + 'key' => null, + 'opaque' => null, + ]; + + foreach ($expected as $key => $expectedValue) { + if (!array_key_exists($key, $original)) { + return false; + } + + if ($original[$key] !== $expectedValue) { + return false; + } + } + + return true; + } + )); // Actions $middleware->process($record, $closure); diff --git a/tests/Unit/ProducerTest.php b/tests/Unit/ProducerTest.php index 864b92d4..5a93dc8c 100644 --- a/tests/Unit/ProducerTest.php +++ b/tests/Unit/ProducerTest.php @@ -295,7 +295,8 @@ public function testShouldBuildDispatcherWithConfigOptions(): void $kafkaProducer = m::mock(KafkaProducer::class); $producerTopic = m::mock(ProducerTopic::class); $configManager = m::mock(ProducerConfigManager::class); - $broker = new Broker('kafka:9092', new None()); + $connections = env('KAFKA_BROKER_CONNECTIONS', 'kafka:9092'); + $broker = new Broker($connections, new None()); $configOptions = new ProducerConfigOptions($topicId, $broker); $producerHandler = new class ($record, $configOptions) extends AbstractProducer { }; From c129a2396cc68ada559dfede958c8828aa3df5ed Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Mon, 19 Dec 2022 10:27:33 -0300 Subject: [PATCH 26/28] chore(deps): bump dependencies --- composer.json | 6 +- composer.lock | 648 ++++++++++++++++++++++-------------------- phpcs.xml | 3 + src/Producer/Poll.php | 6 +- 4 files changed, 344 insertions(+), 319 deletions(-) diff --git a/composer.json b/composer.json index 081ca267..6e68715f 100644 --- a/composer.json +++ b/composer.json @@ -18,13 +18,13 @@ }, "require-dev": { "leroy-merlin-br/coding-standard": "^v3.1.0", - "phpunit/phpunit": "^9.5.24", + "phpunit/phpunit": "^9.5.27", "mockery/mockery": "^1.5.1", "kwn/php-rdkafka-stubs": "^2.2.1", - "orchestra/testbench": "^6.25.0", + "orchestra/testbench": "^6.25.1", "dms/phpunit-arraysubset-asserts": "^0.2.1", "phpro/grumphp": "^1.13.0", - "vimeo/psalm": "^4.27.0", + "vimeo/psalm": "^4.30.0", "psalm/plugin-mockery": "^0.9.1", "rector/rector": "^0.13.10" }, diff --git a/composer.lock b/composer.lock index aeb6671c..2d508fb6 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": "f02a9e65b062fd8e6b6a65d000b57126", + "content-hash": "af22a3400640796726b61a692ed5b532", "packages": [ { "name": "brick/math", @@ -68,16 +68,16 @@ }, { "name": "dflydev/dot-access-data", - "version": "v3.0.1", + "version": "v3.0.2", "source": { "type": "git", "url": "https://github.com/dflydev/dflydev-dot-access-data.git", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c" + "reference": "f41715465d65213d644d3141a6a93081be5d3549" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c", + "url": "https://github.com/gitapi/repos/dflydev/dflydev-dot-access-data/zipball/f41715465d65213d644d3141a6a93081be5d3549", + "reference": "f41715465d65213d644d3141a6a93081be5d3549", "shasum": "" }, "require": { @@ -88,7 +88,7 @@ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", "scrutinizer/ocular": "1.6.0", "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^3.14" + "vimeo/psalm": "^4.0.0" }, "type": "library", "extra": { @@ -137,29 +137,29 @@ ], "support": { "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", - "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.2" }, - "time": "2021-08-13T13:06:58+00:00" + "time": "2022-10-27T11:44:00+00:00" }, { "name": "doctrine/inflector", - "version": "2.0.5", + "version": "2.0.6", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392" + "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", - "reference": "ade2b3bbfb776f27f0558e26eed43b5d9fe1b392", + "url": "https://github.com/gitapi/repos/doctrine/inflector/zipball/d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", + "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024", "shasum": "" }, "require": { "php": "^7.2 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9", + "doctrine/coding-standard": "^10", "phpstan/phpstan": "^1.8", "phpstan/phpstan-phpunit": "^1.1", "phpstan/phpstan-strict-rules": "^1.3", @@ -214,7 +214,7 @@ ], "support": { "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.5" + "source": "https://github.com/doctrine/inflector/tree/2.0.6" }, "funding": [ { @@ -230,7 +230,7 @@ "type": "tidelift" } ], - "time": "2022-09-07T09:01:28+00:00" + "time": "2022-10-20T09:10:12+00:00" }, { "name": "doctrine/lexer", @@ -713,16 +713,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "2.4.1", + "version": "2.4.3", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379" + "reference": "67c26b443f348a51926030c83481b85718457d3d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/69568e4293f4fa993f3b0e51c9723e1e17c41379", - "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379", + "url": "https://github.com/gitapi/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", + "reference": "67c26b443f348a51926030c83481b85718457d3d", "shasum": "" }, "require": { @@ -812,7 +812,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.1" + "source": "https://github.com/guzzle/psr7/tree/2.4.3" }, "funding": [ { @@ -828,20 +828,20 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:45:39+00:00" + "time": "2022-10-26T14:07:24+00:00" }, { "name": "laravel/framework", - "version": "v8.83.23", + "version": "v8.83.27", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491" + "reference": "e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/laravel/framework/zipball/bdc707f8b9bcad289b24cd182d98ec7480ac4491", - "reference": "bdc707f8b9bcad289b24cd182d98ec7480ac4491", + "url": "https://github.com/gitapi/repos/laravel/framework/zipball/e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49", + "reference": "e1afe088b4ca613fb96dc57e6d8dbcb8cc2c6b49", "shasum": "" }, "require": { @@ -1001,7 +1001,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-07-26T13:30:00+00:00" + "time": "2022-12-08T15:28:55+00:00" }, { "name": "laravel/serializable-closure", @@ -1065,16 +1065,16 @@ }, { "name": "league/commonmark", - "version": "2.3.5", + "version": "2.3.8", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257" + "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/84d74485fdb7074f4f9dd6f02ab957b1de513257", - "reference": "84d74485fdb7074f4f9dd6f02ab957b1de513257", + "url": "https://github.com/gitapi/repos/thephpleague/commonmark/zipball/c493585c130544c4e91d2e0e131e6d35cb0cbc47", + "reference": "c493585c130544c4e91d2e0e131e6d35cb0cbc47", "shasum": "" }, "require": { @@ -1094,7 +1094,7 @@ "erusev/parsedown": "^1.0", "ext-json": "*", "github/gfm": "0.29.0", - "michelf/php-markdown": "^1.4", + "michelf/php-markdown": "^1.4 || ^2.0", "nyholm/psr7": "^1.5", "phpstan/phpstan": "^1.8.2", "phpunit/phpunit": "^9.5.21", @@ -1102,7 +1102,7 @@ "symfony/finder": "^5.3 | ^6.0", "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", "unleashedtech/php-coding-standard": "^3.1.1", - "vimeo/psalm": "^4.24.0" + "vimeo/psalm": "^4.24.0 || ^5.0.0" }, "suggest": { "symfony/yaml": "v2.3+ required if using the Front Matter extension" @@ -1167,20 +1167,20 @@ "type": "tidelift" } ], - "time": "2022-07-29T10:59:45+00:00" + "time": "2022-12-10T16:02:17+00:00" }, { "name": "league/config", - "version": "v1.1.1", + "version": "v1.2.0", "source": { "type": "git", "url": "https://github.com/thephpleague/config.git", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "url": "https://github.com/gitapi/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", + "reference": "754b3604fb2984c71f4af4a9cbe7b57f346ec1f3", "shasum": "" }, "require": { @@ -1189,7 +1189,7 @@ "php": "^7.4 || ^8.0" }, "require-dev": { - "phpstan/phpstan": "^0.12.90", + "phpstan/phpstan": "^1.8.2", "phpunit/phpunit": "^9.5.5", "scrutinizer/ocular": "^1.8.1", "unleashedtech/php-coding-standard": "^3.1", @@ -1249,20 +1249,20 @@ "type": "github" } ], - "time": "2021-08-14T12:15:32+00:00" + "time": "2022-12-11T20:36:23+00:00" }, { "name": "league/flysystem", - "version": "1.1.9", + "version": "1.1.10", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "094defdb4a7001845300334e7c1ee2335925ef99" + "reference": "3239285c825c152bcc315fe0e87d6b55f5972ed1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/thephpleague/flysystem/zipball/094defdb4a7001845300334e7c1ee2335925ef99", - "reference": "094defdb4a7001845300334e7c1ee2335925ef99", + "url": "https://github.com/gitapi/repos/thephpleague/flysystem/zipball/3239285c825c152bcc315fe0e87d6b55f5972ed1", + "reference": "3239285c825c152bcc315fe0e87d6b55f5972ed1", "shasum": "" }, "require": { @@ -1335,7 +1335,7 @@ ], "support": { "issues": "https://github.com/thephpleague/flysystem/issues", - "source": "https://github.com/thephpleague/flysystem/tree/1.1.9" + "source": "https://github.com/thephpleague/flysystem/tree/1.1.10" }, "funding": [ { @@ -1343,7 +1343,7 @@ "type": "other" } ], - "time": "2021-12-09T09:40:50+00:00" + "time": "2022-10-04T09:16:37+00:00" }, { "name": "league/mime-type-detection", @@ -1505,16 +1505,16 @@ }, { "name": "nesbot/carbon", - "version": "2.62.1", + "version": "2.64.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a" + "reference": "889546413c97de2d05063b8cb7b193c2531ea211" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", - "reference": "01bc4cdefe98ef58d1f9cb31bdbbddddf2a88f7a", + "url": "https://github.com/gitapi/repos/briannesbitt/Carbon/zipball/889546413c97de2d05063b8cb7b193c2531ea211", + "reference": "889546413c97de2d05063b8cb7b193c2531ea211", "shasum": "" }, "require": { @@ -1525,7 +1525,7 @@ "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" }, "require-dev": { - "doctrine/dbal": "^2.0 || ^3.0", + "doctrine/dbal": "^2.0 || ^3.1.4", "doctrine/orm": "^2.7", "friendsofphp/php-cs-fixer": "^3.0", "kylekatarnls/multi-tester": "^2.0", @@ -1603,29 +1603,29 @@ "type": "tidelift" } ], - "time": "2022-09-02T07:48:13+00:00" + "time": "2022-11-26T17:36:00+00:00" }, { "name": "nette/schema", - "version": "v1.2.2", + "version": "v1.2.3", "source": { "type": "git", "url": "https://github.com/nette/schema.git", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", + "url": "https://github.com/gitapi/repos/nette/schema/zipball/abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", + "reference": "abbdbb70e0245d5f3bf77874cea1dfb0c930d06f", "shasum": "" }, "require": { "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", - "php": ">=7.1 <8.2" + "php": ">=7.1 <8.3" }, "require-dev": { "nette/tester": "^2.3 || ^2.4", - "phpstan/phpstan-nette": "^0.12", + "phpstan/phpstan-nette": "^1.0", "tracy/tracy": "^2.7" }, "type": "library", @@ -1663,9 +1663,9 @@ ], "support": { "issues": "https://github.com/nette/schema/issues", - "source": "https://github.com/nette/schema/tree/v1.2.2" + "source": "https://github.com/nette/schema/tree/v1.2.3" }, - "time": "2021-10-15T11:40:02+00:00" + "time": "2022-10-13T01:24:26+00:00" }, { "name": "nette/utils", @@ -2550,16 +2550,16 @@ }, { "name": "symfony/console", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1" + "reference": "8e9b9c8dfb33af6057c94e1b44846bee700dc5ef" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/console/zipball/c072aa8f724c3af64e2c7a96b796a4863d24dba1", - "reference": "c072aa8f724c3af64e2c7a96b796a4863d24dba1", + "url": "https://github.com/gitapi/repos/symfony/console/zipball/8e9b9c8dfb33af6057c94e1b44846bee700dc5ef", + "reference": "8e9b9c8dfb33af6057c94e1b44846bee700dc5ef", "shasum": "" }, "require": { @@ -2629,7 +2629,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.12" + "source": "https://github.com/symfony/console/tree/v5.4.16" }, "funding": [ { @@ -2645,7 +2645,7 @@ "type": "tidelift" } ], - "time": "2022-08-17T13:18:05+00:00" + "time": "2022-11-25T14:09:27+00:00" }, { "name": "symfony/css-selector", @@ -2782,16 +2782,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.4.11", + "version": "v5.4.15", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8" + "reference": "539cf1428b8442303c6e876ad7bf5a7babd91091" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/f75d17cb4769eb38cd5fccbda95cd80a054d35c8", - "reference": "f75d17cb4769eb38cd5fccbda95cd80a054d35c8", + "url": "https://github.com/gitapi/repos/symfony/error-handler/zipball/539cf1428b8442303c6e876ad7bf5a7babd91091", + "reference": "539cf1428b8442303c6e876ad7bf5a7babd91091", "shasum": "" }, "require": { @@ -2833,7 +2833,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v5.4.11" + "source": "https://github.com/symfony/error-handler/tree/v5.4.15" }, "funding": [ { @@ -2849,7 +2849,7 @@ "type": "tidelift" } ], - "time": "2022-07-29T07:37:50+00:00" + "time": "2022-10-27T06:32:25+00:00" }, { "name": "symfony/event-dispatcher", @@ -3080,16 +3080,16 @@ }, { "name": "symfony/http-foundation", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791" + "reference": "5032c5849aef24741e1970cb03511b0dd131d838" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/f4bfe9611b113b15d98a43da68ec9b5a00d56791", - "reference": "f4bfe9611b113b15d98a43da68ec9b5a00d56791", + "url": "https://github.com/gitapi/repos/symfony/http-foundation/zipball/5032c5849aef24741e1970cb03511b0dd131d838", + "reference": "5032c5849aef24741e1970cb03511b0dd131d838", "shasum": "" }, "require": { @@ -3136,7 +3136,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.12" + "source": "https://github.com/symfony/http-foundation/tree/v5.4.16" }, "funding": [ { @@ -3152,20 +3152,20 @@ "type": "tidelift" } ], - "time": "2022-08-19T07:33:17+00:00" + "time": "2022-11-07T08:06:40+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be" + "reference": "b432c57c5de73634b1859093c1f58e3cd84455a1" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/37f660fa3bcd78fe4893ce23ebe934618ec099be", - "reference": "37f660fa3bcd78fe4893ce23ebe934618ec099be", + "url": "https://github.com/gitapi/repos/symfony/http-kernel/zipball/b432c57c5de73634b1859093c1f58e3cd84455a1", + "reference": "b432c57c5de73634b1859093c1f58e3cd84455a1", "shasum": "" }, "require": { @@ -3248,7 +3248,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v5.4.12" + "source": "https://github.com/symfony/http-kernel/tree/v5.4.16" }, "funding": [ { @@ -3264,20 +3264,20 @@ "type": "tidelift" } ], - "time": "2022-08-26T14:40:40+00:00" + "time": "2022-11-28T18:08:58+00:00" }, { "name": "symfony/mime", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90" + "reference": "46eeedb08f0832b1b61a84c612d945fc85ee4734" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/mime/zipball/03876e9c5a36f5b45e7d9a381edda5421eff8a90", - "reference": "03876e9c5a36f5b45e7d9a381edda5421eff8a90", + "url": "https://github.com/gitapi/repos/symfony/mime/zipball/46eeedb08f0832b1b61a84c612d945fc85ee4734", + "reference": "46eeedb08f0832b1b61a84c612d945fc85ee4734", "shasum": "" }, "require": { @@ -3291,7 +3291,8 @@ "egulias/email-validator": "~3.0.0", "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", - "symfony/mailer": "<4.4" + "symfony/mailer": "<4.4", + "symfony/serializer": "<5.4.14|>=6.0,<6.0.14|>=6.1,<6.1.6" }, "require-dev": { "egulias/email-validator": "^2.1.10|^3.1", @@ -3299,7 +3300,7 @@ "symfony/dependency-injection": "^4.4|^5.0|^6.0", "symfony/property-access": "^4.4|^5.1|^6.0", "symfony/property-info": "^4.4|^5.1|^6.0", - "symfony/serializer": "^5.2|^6.0" + "symfony/serializer": "^5.4.14|~6.0.14|^6.1.6" }, "type": "library", "autoload": { @@ -3331,7 +3332,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.12" + "source": "https://github.com/symfony/mime/tree/v5.4.16" }, "funding": [ { @@ -3347,20 +3348,20 @@ "type": "tidelift" } ], - "time": "2022-08-19T14:24:03+00:00" + "time": "2022-11-26T16:45:22+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4" + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-ctype/zipball/6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", + "url": "https://github.com/gitapi/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", "shasum": "" }, "require": { @@ -3375,7 +3376,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3413,7 +3414,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" }, "funding": [ { @@ -3429,20 +3430,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-iconv", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", - "reference": "143f1881e655bebca1312722af8068de235ae5dc" + "reference": "927013f3aac555983a5059aada98e1907d842695" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-iconv/zipball/143f1881e655bebca1312722af8068de235ae5dc", - "reference": "143f1881e655bebca1312722af8068de235ae5dc", + "url": "https://github.com/gitapi/repos/symfony/polyfill-iconv/zipball/927013f3aac555983a5059aada98e1907d842695", + "reference": "927013f3aac555983a5059aada98e1907d842695", "shasum": "" }, "require": { @@ -3457,7 +3458,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3496,7 +3497,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-iconv/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-iconv/tree/v1.27.0" }, "funding": [ { @@ -3512,20 +3513,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "433d05519ce6990bf3530fba6957499d327395c2" + "reference": "511a08c03c1960e08a883f4cffcacd219b758354" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-grapheme/zipball/433d05519ce6990bf3530fba6957499d327395c2", - "reference": "433d05519ce6990bf3530fba6957499d327395c2", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", + "reference": "511a08c03c1960e08a883f4cffcacd219b758354", "shasum": "" }, "require": { @@ -3537,7 +3538,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3577,7 +3578,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" }, "funding": [ { @@ -3593,20 +3594,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8" + "reference": "639084e360537a19f9ee352433b84ce831f3d2da" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-idn/zipball/59a8d271f00dd0e4c2e518104cc7963f655a1aa8", - "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-idn/zipball/639084e360537a19f9ee352433b84ce831f3d2da", + "reference": "639084e360537a19f9ee352433b84ce831f3d2da", "shasum": "" }, "require": { @@ -3620,7 +3621,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3664,7 +3665,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.27.0" }, "funding": [ { @@ -3680,20 +3681,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd" + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-normalizer/zipball/219aa369ceff116e673852dce47c3a41794c14bd", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd", + "url": "https://github.com/gitapi/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", "shasum": "" }, "require": { @@ -3705,7 +3706,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3748,7 +3749,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" }, "funding": [ { @@ -3764,20 +3765,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e" + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-mbstring/zipball/9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", + "url": "https://github.com/gitapi/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", "shasum": "" }, "require": { @@ -3792,7 +3793,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3831,7 +3832,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" }, "funding": [ { @@ -3847,20 +3848,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php72", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2" + "reference": "869329b1e9894268a8a61dabb69153029b7a8c97" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php72/zipball/bf44a9fd41feaac72b074de600314a93e2ae78e2", - "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php72/zipball/869329b1e9894268a8a61dabb69153029b7a8c97", + "reference": "869329b1e9894268a8a61dabb69153029b7a8c97", "shasum": "" }, "require": { @@ -3869,7 +3870,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3907,7 +3908,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php72/tree/v1.27.0" }, "funding": [ { @@ -3923,20 +3924,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85" + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php73/zipball/e440d35fa0286f77fb45b79a03fedbeda9307e85", - "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", "shasum": "" }, "require": { @@ -3945,7 +3946,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3986,7 +3987,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" }, "funding": [ { @@ -4002,20 +4003,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace" + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php80/zipball/cfa0ae98841b9e461207c13ab093d76b0fa7bace", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", "shasum": "" }, "require": { @@ -4024,7 +4025,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4069,7 +4070,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" }, "funding": [ { @@ -4085,20 +4086,20 @@ "type": "tidelift" } ], - "time": "2022-05-10T07:21:04+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1" + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/polyfill-php81/zipball/13f6d1271c663dc5ae9fb843a8f16521db7687a1", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1", + "url": "https://github.com/gitapi/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", "shasum": "" }, "require": { @@ -4107,7 +4108,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4148,7 +4149,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" }, "funding": [ { @@ -4164,7 +4165,7 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/process", @@ -4230,16 +4231,16 @@ }, { "name": "symfony/routing", - "version": "v5.4.11", + "version": "v5.4.15", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226" + "reference": "5c9b129efe9abce9470e384bf65d8a7e262eee69" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/routing/zipball/3e01ccd9b2a3a4167ba2b3c53612762300300226", - "reference": "3e01ccd9b2a3a4167ba2b3c53612762300300226", + "url": "https://github.com/gitapi/repos/symfony/routing/zipball/5c9b129efe9abce9470e384bf65d8a7e262eee69", + "reference": "5c9b129efe9abce9470e384bf65d8a7e262eee69", "shasum": "" }, "require": { @@ -4300,7 +4301,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v5.4.11" + "source": "https://github.com/symfony/routing/tree/v5.4.15" }, "funding": [ { @@ -4316,7 +4317,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-10-13T14:10:41+00:00" }, { "name": "symfony/service-contracts", @@ -4403,16 +4404,16 @@ }, { "name": "symfony/string", - "version": "v5.4.12", + "version": "v5.4.15", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058" + "reference": "571334ce9f687e3e6af72db4d3b2a9431e4fd9ed" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/string/zipball/2fc515e512d721bf31ea76bd02fe23ada4640058", - "reference": "2fc515e512d721bf31ea76bd02fe23ada4640058", + "url": "https://github.com/gitapi/repos/symfony/string/zipball/571334ce9f687e3e6af72db4d3b2a9431e4fd9ed", + "reference": "571334ce9f687e3e6af72db4d3b2a9431e4fd9ed", "shasum": "" }, "require": { @@ -4469,7 +4470,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.12" + "source": "https://github.com/symfony/string/tree/v5.4.15" }, "funding": [ { @@ -4485,20 +4486,20 @@ "type": "tidelift" } ], - "time": "2022-08-12T17:03:11+00:00" + "time": "2022-10-05T15:16:54+00:00" }, { "name": "symfony/translation", - "version": "v5.4.12", + "version": "v5.4.14", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae" + "reference": "f0ed07675863aa6e3939df8b1bc879450b585cab" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/translation/zipball/42ecc77eb4f229ce2df702a648ec93b8478d76ae", - "reference": "42ecc77eb4f229ce2df702a648ec93b8478d76ae", + "url": "https://github.com/gitapi/repos/symfony/translation/zipball/f0ed07675863aa6e3939df8b1bc879450b585cab", + "reference": "f0ed07675863aa6e3939df8b1bc879450b585cab", "shasum": "" }, "require": { @@ -4566,7 +4567,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.4.12" + "source": "https://github.com/symfony/translation/tree/v5.4.14" }, "funding": [ { @@ -4582,7 +4583,7 @@ "type": "tidelift" } ], - "time": "2022-08-02T15:52:22+00:00" + "time": "2022-10-07T08:01:20+00:00" }, { "name": "symfony/translation-contracts", @@ -4664,16 +4665,16 @@ }, { "name": "symfony/var-dumper", - "version": "v5.4.11", + "version": "v5.4.14", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861" + "reference": "6894d06145fefebd9a4c7272baa026a1c394a430" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/b8f306d7b8ef34fb3db3305be97ba8e088fb4861", - "reference": "b8f306d7b8ef34fb3db3305be97ba8e088fb4861", + "url": "https://github.com/gitapi/repos/symfony/var-dumper/zipball/6894d06145fefebd9a4c7272baa026a1c394a430", + "reference": "6894d06145fefebd9a4c7272baa026a1c394a430", "shasum": "" }, "require": { @@ -4733,7 +4734,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.4.11" + "source": "https://github.com/symfony/var-dumper/tree/v5.4.14" }, "funding": [ { @@ -4749,7 +4750,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-10-07T08:01:20+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -4806,16 +4807,16 @@ }, { "name": "vlucas/phpdotenv", - "version": "v5.4.1", + "version": "v5.5.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f" + "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vlucas/phpdotenv/zipball/264dce589e7ce37a7ba99cb901eed8249fbec92f", - "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f", + "url": "https://github.com/gitapi/repos/vlucas/phpdotenv/zipball/1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", + "reference": "1a7ea2afc49c3ee6d87061f5a233e3a035d0eae7", "shasum": "" }, "require": { @@ -4830,15 +4831,19 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.4.1", "ext-filter": "*", - "phpunit/phpunit": "^7.5.20 || ^8.5.21 || ^9.5.10" + "phpunit/phpunit": "^7.5.20 || ^8.5.30 || ^9.5.25" }, "suggest": { "ext-filter": "Required to use the boolean validator." }, "type": "library", "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": true + }, "branch-alias": { - "dev-master": "5.4-dev" + "dev-master": "5.5-dev" } }, "autoload": { @@ -4870,7 +4875,7 @@ ], "support": { "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.4.1" + "source": "https://github.com/vlucas/phpdotenv/tree/v5.5.0" }, "funding": [ { @@ -4882,7 +4887,7 @@ "type": "tidelift" } ], - "time": "2021-12-12T23:22:04+00:00" + "time": "2022-10-16T01:01:54+00:00" }, { "name": "voku/portable-ascii", @@ -5084,8 +5089,9 @@ "serialization" ], "support": { - "source": "https://github.com/wikimedia/avro-php/tree/master" + "source": "https://github.com/wikimedia/avro-php/tree/v1.9.0" }, + "abandoned": "rg/avro-php", "time": "2019-09-16T15:18:39+00:00" } ], @@ -5709,16 +5715,16 @@ }, { "name": "composer/pcre", - "version": "3.0.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/composer/pcre.git", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", + "url": "https://github.com/gitapi/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", "shasum": "" }, "require": { @@ -5760,7 +5766,7 @@ ], "support": { "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.0.0" + "source": "https://github.com/composer/pcre/tree/3.1.0" }, "funding": [ { @@ -5776,7 +5782,7 @@ "type": "tidelift" } ], - "time": "2022-02-25T20:21:48+00:00" + "time": "2022-11-17T09:50:14+00:00" }, { "name": "composer/semver", @@ -6084,16 +6090,16 @@ }, { "name": "doctrine/collections", - "version": "1.7.3", + "version": "1.8.0", "source": { "type": "git", "url": "https://github.com/doctrine/collections.git", - "reference": "09dde3eb237756190f2de738d3c97cff10a8407b" + "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/09dde3eb237756190f2de738d3c97cff10a8407b", - "reference": "09dde3eb237756190f2de738d3c97cff10a8407b", + "url": "https://github.com/gitapi/repos/doctrine/collections/zipball/2b44dd4cbca8b5744327de78bafef5945c7e7b5e", + "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e", "shasum": "" }, "require": { @@ -6148,9 +6154,9 @@ ], "support": { "issues": "https://github.com/doctrine/collections/issues", - "source": "https://github.com/doctrine/collections/tree/1.7.3" + "source": "https://github.com/doctrine/collections/tree/1.8.0" }, - "time": "2022-09-01T19:34:23+00:00" + "time": "2022-09-01T20:12:10+00:00" }, { "name": "doctrine/deprecations", @@ -6267,20 +6273,20 @@ }, { "name": "fakerphp/faker", - "version": "v1.20.0", + "version": "v1.21.0", "source": { "type": "git", "url": "https://github.com/FakerPHP/Faker.git", - "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b" + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/37f751c67a5372d4e26353bd9384bc03744ec77b", - "reference": "37f751c67a5372d4e26353bd9384bc03744ec77b", + "url": "https://github.com/gitapi/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0", + "php": "^7.4 || ^8.0", "psr/container": "^1.0 || ^2.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" }, @@ -6291,7 +6297,8 @@ "bamarni/composer-bin-plugin": "^1.4.1", "doctrine/persistence": "^1.3 || ^2.0", "ext-intl": "*", - "symfony/phpunit-bridge": "^4.4 || ^5.2" + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" }, "suggest": { "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", @@ -6303,7 +6310,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v1.20-dev" + "dev-main": "v1.21-dev" } }, "autoload": { @@ -6328,9 +6335,9 @@ ], "support": { "issues": "https://github.com/FakerPHP/Faker/issues", - "source": "https://github.com/FakerPHP/Faker/tree/v1.20.0" + "source": "https://github.com/FakerPHP/Faker/tree/v1.21.0" }, - "time": "2022-07-20T13:12:54+00:00" + "time": "2022-12-13T13:54:32+00:00" }, { "name": "felixfbecker/advanced-json-rpc", @@ -6435,16 +6442,16 @@ }, { "name": "gitonomy/gitlib", - "version": "v1.3.6", + "version": "v1.3.7", "source": { "type": "git", "url": "https://github.com/gitonomy/gitlib.git", - "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2" + "reference": "00b57b79f02396aa4c7c163f76fe2bc48faebbb7" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/33ae0a2e469accc19d1a06bed63ed93dbf368ae2", - "reference": "33ae0a2e469accc19d1a06bed63ed93dbf368ae2", + "url": "https://github.com/gitapi/repos/gitonomy/gitlib/zipball/00b57b79f02396aa4c7c163f76fe2bc48faebbb7", + "reference": "00b57b79f02396aa4c7c163f76fe2bc48faebbb7", "shasum": "" }, "require": { @@ -6455,6 +6462,7 @@ }, "require-dev": { "ext-fileinfo": "*", + "phpspec/prophecy": "^1.10.2", "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.20 || ^9.5.9", "psr/log": "^1.0" }, @@ -6497,7 +6505,7 @@ "description": "Library for accessing git", "support": { "issues": "https://github.com/gitonomy/gitlib/issues", - "source": "https://github.com/gitonomy/gitlib/tree/v1.3.6" + "source": "https://github.com/gitonomy/gitlib/tree/v1.3.7" }, "funding": [ { @@ -6505,7 +6513,7 @@ "type": "tidelift" } ], - "time": "2022-08-05T09:17:13+00:00" + "time": "2022-10-04T14:20:15+00:00" }, { "name": "hamcrest/hamcrest-php", @@ -6776,16 +6784,16 @@ }, { "name": "netresearch/jsonmapper", - "version": "v4.0.0", + "version": "v4.1.0", "source": { "type": "git", "url": "https://github.com/cweiske/jsonmapper.git", - "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d" + "reference": "cfa81ea1d35294d64adb9c68aa4cb9e92400e53f" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", - "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d", + "url": "https://github.com/gitapi/repos/cweiske/jsonmapper/zipball/cfa81ea1d35294d64adb9c68aa4cb9e92400e53f", + "reference": "cfa81ea1d35294d64adb9c68aa4cb9e92400e53f", "shasum": "" }, "require": { @@ -6821,22 +6829,22 @@ "support": { "email": "cweiske@cweiske.de", "issues": "https://github.com/cweiske/jsonmapper/issues", - "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0" + "source": "https://github.com/cweiske/jsonmapper/tree/v4.1.0" }, - "time": "2020-12-01T19:48:11+00:00" + "time": "2022-12-08T20:46:14+00:00" }, { "name": "nikic/php-parser", - "version": "v4.15.1", + "version": "v4.15.2", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900" + "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", + "url": "https://github.com/gitapi/repos/nikic/PHP-Parser/zipball/f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", + "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc", "shasum": "" }, "require": { @@ -6877,9 +6885,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.2" }, - "time": "2022-09-04T07:30:47+00:00" + "time": "2022-11-12T15:38:23+00:00" }, { "name": "ondram/ci-detector", @@ -7014,22 +7022,22 @@ }, { "name": "orchestra/testbench", - "version": "v6.25.0", + "version": "v6.25.1", "source": { "type": "git", "url": "https://github.com/orchestral/testbench.git", - "reference": "a65b90b78caed1fdface168ca02af34f3422e513" + "reference": "0516123d26d64117bc04f7e9cb982eae2624e750" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/a65b90b78caed1fdface168ca02af34f3422e513", - "reference": "a65b90b78caed1fdface168ca02af34f3422e513", + "url": "https://github.com/gitapi/repos/orchestral/testbench/zipball/0516123d26d64117bc04f7e9cb982eae2624e750", + "reference": "0516123d26d64117bc04f7e9cb982eae2624e750", "shasum": "" }, "require": { "laravel/framework": "^8.75", "mockery/mockery": "^1.4.4", - "orchestra/testbench-core": "^6.29", + "orchestra/testbench-core": "^6.29.1", "php": "^7.3 || ^8.0", "phpunit/phpunit": "^8.5.21 || ^9.5.10", "spatie/laravel-ray": "^1.26.2" @@ -7063,7 +7071,7 @@ ], "support": { "issues": "https://github.com/orchestral/testbench/issues", - "source": "https://github.com/orchestral/testbench/tree/v6.25.0" + "source": "https://github.com/orchestral/testbench/tree/v6.25.1" }, "funding": [ { @@ -7075,20 +7083,20 @@ "type": "liberapay" } ], - "time": "2022-08-24T01:41:23+00:00" + "time": "2022-10-11T14:01:10+00:00" }, { "name": "orchestra/testbench-core", - "version": "v6.29.0", + "version": "v6.29.1", "source": { "type": "git", "url": "https://github.com/orchestral/testbench-core.git", - "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4" + "reference": "29a7586915885f89b8d2203efe20f76afe9cf956" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/8eeace7d979a7905e6fab77a30a3b05da99459c4", - "reference": "8eeace7d979a7905e6fab77a30a3b05da99459c4", + "url": "https://github.com/gitapi/repos/orchestral/testbench-core/zipball/29a7586915885f89b8d2203efe20f76afe9cf956", + "reference": "29a7586915885f89b8d2203efe20f76afe9cf956", "shasum": "" }, "require": { @@ -7165,7 +7173,7 @@ "type": "liberapay" } ], - "time": "2022-08-24T00:15:20+00:00" + "time": "2022-10-11T12:12:52+00:00" }, { "name": "phar-io/manifest", @@ -7390,25 +7398,30 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.6.1", + "version": "1.6.2", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "77a32518733312af16a44300404e945338981de3" + "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpDocumentor/TypeResolver/zipball/77a32518733312af16a44300404e945338981de3", - "reference": "77a32518733312af16a44300404e945338981de3", + "url": "https://github.com/gitapi/repos/phpDocumentor/TypeResolver/zipball/48f445a408c131e38cab1c235aa6d2bb7a0bb20d", + "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", + "php": "^7.4 || ^8.0", "phpdocumentor/reflection-common": "^2.0" }, "require-dev": { "ext-tokenizer": "*", - "psalm/phar": "^4.8" + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.13.9", + "vimeo/psalm": "^4.25" }, "type": "library", "extra": { @@ -7434,9 +7447,9 @@ "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.6.1" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.2" }, - "time": "2022-03-15T21:29:03+00:00" + "time": "2022-10-14T12:47:21+00:00" }, { "name": "phpro/grumphp", @@ -7556,16 +7569,16 @@ }, { "name": "phpstan/phpdoc-parser", - "version": "1.8.0", + "version": "1.15.3", "source": { "type": "git", "url": "https://github.com/phpstan/phpdoc-parser.git", - "reference": "8dd908dd6156e974b9a0f8bb4cd5ad0707830f04" + "reference": "61800f71a5526081d1b5633766aa88341f1ade76" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpstan/phpdoc-parser/zipball/8dd908dd6156e974b9a0f8bb4cd5ad0707830f04", - "reference": "8dd908dd6156e974b9a0f8bb4cd5ad0707830f04", + "url": "https://github.com/gitapi/repos/phpstan/phpdoc-parser/zipball/61800f71a5526081d1b5633766aa88341f1ade76", + "reference": "61800f71a5526081d1b5633766aa88341f1ade76", "shasum": "" }, "require": { @@ -7595,22 +7608,22 @@ "description": "PHPDoc parser with support for nullable, intersection and generic types", "support": { "issues": "https://github.com/phpstan/phpdoc-parser/issues", - "source": "https://github.com/phpstan/phpdoc-parser/tree/1.8.0" + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.15.3" }, - "time": "2022-09-04T18:59:06+00:00" + "time": "2022-12-20T20:56:55+00:00" }, { "name": "phpstan/phpstan", - "version": "1.8.5", + "version": "1.9.4", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "f6598a5ff12ca4499a836815e08b4d77a2ddeb20" + "reference": "d03bccee595e2146b7c9d174486b84f4dc61b0f2" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/phpstan/phpstan/zipball/f6598a5ff12ca4499a836815e08b4d77a2ddeb20", - "reference": "f6598a5ff12ca4499a836815e08b4d77a2ddeb20", + "url": "https://github.com/gitapi/repos/phpstan/phpstan/zipball/d03bccee595e2146b7c9d174486b84f4dc61b0f2", + "reference": "d03bccee595e2146b7c9d174486b84f4dc61b0f2", "shasum": "" }, "require": { @@ -7640,7 +7653,7 @@ ], "support": { "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/1.8.5" + "source": "https://github.com/phpstan/phpstan/tree/1.9.4" }, "funding": [ { @@ -7656,20 +7669,20 @@ "type": "tidelift" } ], - "time": "2022-09-07T16:05:32+00:00" + "time": "2022-12-17T13:33:52+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.17", + "version": "9.2.22", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8" + "reference": "e4bf60d2220b4baaa0572986b5d69870226b06df" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/aa94dc41e8661fe90c7316849907cba3007b10d8", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8", + "url": "https://github.com/gitapi/repos/sebastianbergmann/php-code-coverage/zipball/e4bf60d2220b4baaa0572986b5d69870226b06df", + "reference": "e4bf60d2220b4baaa0572986b5d69870226b06df", "shasum": "" }, "require": { @@ -7725,7 +7738,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.17" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.22" }, "funding": [ { @@ -7733,7 +7746,7 @@ "type": "github" } ], - "time": "2022-08-30T12:24:04+00:00" + "time": "2022-12-18T16:40:55+00:00" }, { "name": "phpunit/php-file-iterator", @@ -7978,16 +7991,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.24", + "version": "9.5.27", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5" + "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", - "reference": "d0aa6097bef9fd42458a9b3c49da32c6ce6129c5", + "url": "https://github.com/gitapi/repos/sebastianbergmann/phpunit/zipball/a2bc7ffdca99f92d959b3f2270529334030bba38", + "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38", "shasum": "" }, "require": { @@ -8009,14 +8022,14 @@ "phpunit/php-timer": "^5.0.2", "sebastian/cli-parser": "^1.0.1", "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.5", + "sebastian/comparator": "^4.0.8", "sebastian/diff": "^4.0.3", "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.3", + "sebastian/exporter": "^4.0.5", "sebastian/global-state": "^5.0.1", "sebastian/object-enumerator": "^4.0.3", "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.1", + "sebastian/type": "^3.2", "sebastian/version": "^3.0.2" }, "suggest": { @@ -8060,7 +8073,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.24" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.27" }, "funding": [ { @@ -8070,9 +8083,13 @@ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", + "type": "tidelift" } ], - "time": "2022-08-30T07:42:16+00:00" + "time": "2022-12-09T07:31:23+00:00" }, { "name": "pimple/pimple", @@ -9738,16 +9755,16 @@ }, { "name": "symfony/dependency-injection", - "version": "v5.4.11", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62" + "reference": "a93e1863500940780fc1235f52d54397be2d14b3" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a8b9251016e9476db73e25fa836904bc0bf74c62", - "reference": "a8b9251016e9476db73e25fa836904bc0bf74c62", + "url": "https://github.com/gitapi/repos/symfony/dependency-injection/zipball/a93e1863500940780fc1235f52d54397be2d14b3", + "reference": "a93e1863500940780fc1235f52d54397be2d14b3", "shasum": "" }, "require": { @@ -9807,7 +9824,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v5.4.11" + "source": "https://github.com/symfony/dependency-injection/tree/v5.4.16" }, "funding": [ { @@ -9823,7 +9840,7 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2022-11-25T07:33:13+00:00" }, { "name": "symfony/dotenv", @@ -9898,16 +9915,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.12", + "version": "v5.4.13", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447" + "reference": "ac09569844a9109a5966b9438fc29113ce77cf51" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/2d67c1f9a1937406a9be3171b4b22250c0a11447", - "reference": "2d67c1f9a1937406a9be3171b4b22250c0a11447", + "url": "https://github.com/gitapi/repos/symfony/filesystem/zipball/ac09569844a9109a5966b9438fc29113ce77cf51", + "reference": "ac09569844a9109a5966b9438fc29113ce77cf51", "shasum": "" }, "require": { @@ -9942,7 +9959,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.12" + "source": "https://github.com/symfony/filesystem/tree/v5.4.13" }, "funding": [ { @@ -9958,7 +9975,7 @@ "type": "tidelift" } ], - "time": "2022-08-02T13:48:16+00:00" + "time": "2022-09-21T19:53:16+00:00" }, { "name": "symfony/options-resolver", @@ -10031,16 +10048,16 @@ }, { "name": "symfony/stopwatch", - "version": "v5.4.5", + "version": "v5.4.13", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30" + "reference": "6df7a3effde34d81717bbef4591e5ffe32226d69" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/stopwatch/zipball/4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", - "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", + "url": "https://github.com/gitapi/repos/symfony/stopwatch/zipball/6df7a3effde34d81717bbef4591e5ffe32226d69", + "reference": "6df7a3effde34d81717bbef4591e5ffe32226d69", "shasum": "" }, "require": { @@ -10073,7 +10090,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.5" + "source": "https://github.com/symfony/stopwatch/tree/v5.4.13" }, "funding": [ { @@ -10089,20 +10106,20 @@ "type": "tidelift" } ], - "time": "2022-02-18T16:06:09+00:00" + "time": "2022-09-28T13:19:49+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.12", + "version": "v5.4.16", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c" + "reference": "ebd37c71f62d5ec5f6e27de3e06fee492d4c6298" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", - "reference": "7a3aa21ac8ab1a96cc6de5bbcab4bc9fc943b18c", + "url": "https://github.com/gitapi/repos/symfony/yaml/zipball/ebd37c71f62d5ec5f6e27de3e06fee492d4c6298", + "reference": "ebd37c71f62d5ec5f6e27de3e06fee492d4c6298", "shasum": "" }, "require": { @@ -10148,7 +10165,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.12" + "source": "https://github.com/symfony/yaml/tree/v5.4.16" }, "funding": [ { @@ -10164,7 +10181,7 @@ "type": "tidelift" } ], - "time": "2022-08-02T15:52:22+00:00" + "time": "2022-11-25T16:04:03+00:00" }, { "name": "theseer/tokenizer", @@ -10218,16 +10235,16 @@ }, { "name": "vimeo/psalm", - "version": "4.27.0", + "version": "4.30.0", "source": { "type": "git", "url": "https://github.com/vimeo/psalm.git", - "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff" + "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/faf106e717c37b8c81721845dba9de3d8deed8ff", - "reference": "faf106e717c37b8c81721845dba9de3d8deed8ff", + "url": "https://github.com/gitapi/repos/vimeo/psalm/zipball/d0bc6e25d89f649e4f36a534f330f8bb4643dd69", + "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69", "shasum": "" }, "require": { @@ -10266,6 +10283,7 @@ "phpdocumentor/reflection-docblock": "^5", "phpmyadmin/sql-parser": "5.1.0||dev-master", "phpspec/prophecy": ">=1.9.0", + "phpstan/phpdoc-parser": "1.2.* || 1.6.4", "phpunit/phpunit": "^9.0", "psalm/plugin-phpunit": "^0.16", "slevomat/coding-standard": "^7.0", @@ -10319,9 +10337,9 @@ ], "support": { "issues": "https://github.com/vimeo/psalm/issues", - "source": "https://github.com/vimeo/psalm/tree/4.27.0" + "source": "https://github.com/vimeo/psalm/tree/4.30.0" }, - "time": "2022-08-31T13:47:09+00:00" + "time": "2022-11-06T20:37:08+00:00" }, { "name": "webmozart/path-util", @@ -10376,16 +10394,16 @@ }, { "name": "zbateson/mail-mime-parser", - "version": "2.2.2", + "version": "2.2.3", "source": { "type": "git", "url": "https://github.com/zbateson/mail-mime-parser.git", - "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86" + "reference": "295c7f82a8c44af685680d9df6714beb812e90ff" }, "dist": { "type": "zip", - "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/318cd809afebe48e8fb41625b05b25470fb3fa86", - "reference": "318cd809afebe48e8fb41625b05b25470fb3fa86", + "url": "https://github.com/gitapi/repos/zbateson/mail-mime-parser/zipball/295c7f82a8c44af685680d9df6714beb812e90ff", + "reference": "295c7f82a8c44af685680d9df6714beb812e90ff", "shasum": "" }, "require": { @@ -10445,7 +10463,7 @@ "type": "github" } ], - "time": "2022-09-01T15:59:13+00:00" + "time": "2022-09-28T16:31:49+00:00" }, { "name": "zbateson/mb-wrapper", diff --git a/phpcs.xml b/phpcs.xml index 70af07ab..5d004a88 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -29,4 +29,7 @@ src/TopicHandler/Producer/AbstractHandler.php src/TopicHandler/Producer/AbstractProducer.php + + src/Producer/Poll.php + diff --git a/src/Producer/Poll.php b/src/Producer/Poll.php index 83db6798..afb8d081 100644 --- a/src/Producer/Poll.php +++ b/src/Producer/Poll.php @@ -60,7 +60,11 @@ public function flushMessage(): void } for ($flushAttempts = 0; $flushAttempts < $this->maxFlushAttempts; $flushAttempts++) { - if (RD_KAFKA_RESP_ERR_NO_ERROR === $this->producer->flush($this->timeout)) { + if ( + RD_KAFKA_RESP_ERR_NO_ERROR === $this->producer->flush( + $this->timeout + ) + ) { return; } From 89cff622c00be0f2ab3c25fc7527f4a6b5fc6242 Mon Sep 17 00:00:00 2001 From: hcdias Date: Thu, 22 Dec 2022 13:51:38 -0300 Subject: [PATCH 27/28] fix: check existence of constant before accessing it --- config/kafka.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/config/kafka.php b/config/kafka.php index 3e4fe4b9..9f9ae370 100644 --- a/config/kafka.php +++ b/config/kafka.php @@ -143,7 +143,9 @@ // Here you can configure which partition you want to send the message // it can be -1 (RD_KAFKA_PARTITION_UA) to let Kafka decide, or an int with the partition number - 'partition' => constant('RD_KAFKA_PARTITION_UA') ?? -1, + 'partition' => defined('RD_KAFKA_PARTITION_UA') + ? constant('RD_KAFKA_PARTITION_UA') + : -1, ], ], ], From 49bb198add2f4dd2dc7e25a6dc8be2fd345e8ee6 Mon Sep 17 00:00:00 2001 From: Orlando Cavassani Date: Fri, 23 Dec 2022 10:26:18 -0300 Subject: [PATCH 28/28] chore(docker): remove leroy-merlin-br container --- docker/Dockerfile | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 367a3d76..1531adc3 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,8 +1,26 @@ -FROM leroymerlinbr/php:7.4 +FROM php:7.4-fpm LABEL maintainer="boitata@leroymerlin.com.br" USER root:root +COPY --from=composer:latest /usr/bin/composer /usr/local/bin/composer + +RUN apt-get update -qq \ + && apt-get install -qq --no-install-recommends \ + git zip unzip \ + libzip-dev libssl-dev \ + zlib1g-dev libicu-dev \ + && apt-get clean + +RUN pecl install xdebug-3.1.6 \ + && docker-php-ext-enable \ + xdebug \ + && docker-php-ext-configure \ + intl \ + && docker-php-ext-install \ + intl pcntl zip \ + && rm -rf /tmp/* + RUN cd /tmp \ && git clone https://github.com/edenhill/librdkafka.git \ && cd librdkafka \ @@ -22,6 +40,7 @@ ARG GID=1000 RUN groupmod -g ${GID} www-data \ && usermod -u ${UID} -g www-data www-data \ + && mkdir -p /var/www/html \ && chown -hR www-data:www-data \ /var/www \ /usr/local/ @@ -29,3 +48,5 @@ RUN groupmod -g ${GID} www-data \ COPY custom.ini /usr/local/etc/php/conf.d/custom.ini USER www-data:www-data +WORKDIR /var/www/html +ENV PATH=$PATH:/var/www/.composer/vendor/bin