diff --git a/composer.lock b/composer.lock index 299e1e9..5ce064f 100644 --- a/composer.lock +++ b/composer.lock @@ -1646,16 +1646,16 @@ }, { "name": "nette/utils", - "version": "v4.0.1", + "version": "v4.0.2", "source": { "type": "git", "url": "https://github.com/nette/utils.git", - "reference": "9124157137da01b1f5a5a22d6486cb975f26db7e" + "reference": "cead6637226456b35e1175cc53797dd585d85545" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/utils/zipball/9124157137da01b1f5a5a22d6486cb975f26db7e", - "reference": "9124157137da01b1f5a5a22d6486cb975f26db7e", + "url": "https://api.github.com/repos/nette/utils/zipball/cead6637226456b35e1175cc53797dd585d85545", + "reference": "cead6637226456b35e1175cc53797dd585d85545", "shasum": "" }, "require": { @@ -1677,8 +1677,7 @@ "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" + "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()" }, "type": "library", "extra": { @@ -1727,9 +1726,9 @@ ], "support": { "issues": "https://github.com/nette/utils/issues", - "source": "https://github.com/nette/utils/tree/v4.0.1" + "source": "https://github.com/nette/utils/tree/v4.0.2" }, - "time": "2023-07-30T15:42:21+00:00" + "time": "2023-09-19T11:58:07+00:00" }, { "name": "opis/json-schema", @@ -3696,16 +3695,16 @@ }, { "name": "symfony/error-handler", - "version": "v6.3.2", + "version": "v6.3.5", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "85fd65ed295c4078367c784e8a5a6cee30348b7a" + "reference": "1f69476b64fb47105c06beef757766c376b548c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/85fd65ed295c4078367c784e8a5a6cee30348b7a", - "reference": "85fd65ed295c4078367c784e8a5a6cee30348b7a", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/1f69476b64fb47105c06beef757766c376b548c4", + "reference": "1f69476b64fb47105c06beef757766c376b548c4", "shasum": "" }, "require": { @@ -3750,7 +3749,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/v6.3.2" + "source": "https://github.com/symfony/error-handler/tree/v6.3.5" }, "funding": [ { @@ -3766,7 +3765,7 @@ "type": "tidelift" } ], - "time": "2023-07-16T17:05:46+00:00" + "time": "2023-09-12T06:57:20+00:00" }, { "name": "symfony/event-dispatcher", @@ -3989,16 +3988,16 @@ }, { "name": "symfony/finder", - "version": "v6.3.3", + "version": "v6.3.5", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "9915db259f67d21eefee768c1abcf1cc61b1fc9e" + "reference": "a1b31d88c0e998168ca7792f222cbecee47428c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/9915db259f67d21eefee768c1abcf1cc61b1fc9e", - "reference": "9915db259f67d21eefee768c1abcf1cc61b1fc9e", + "url": "https://api.github.com/repos/symfony/finder/zipball/a1b31d88c0e998168ca7792f222cbecee47428c4", + "reference": "a1b31d88c0e998168ca7792f222cbecee47428c4", "shasum": "" }, "require": { @@ -4033,7 +4032,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.3.3" + "source": "https://github.com/symfony/finder/tree/v6.3.5" }, "funding": [ { @@ -4049,7 +4048,7 @@ "type": "tidelift" } ], - "time": "2023-07-31T08:31:44+00:00" + "time": "2023-09-26T12:56:25+00:00" }, { "name": "symfony/http-client", @@ -4223,16 +4222,16 @@ }, { "name": "symfony/http-foundation", - "version": "v6.3.4", + "version": "v6.3.5", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "cac1556fdfdf6719668181974104e6fcfa60e844" + "reference": "b50f5e281d722cb0f4c296f908bacc3e2b721957" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/cac1556fdfdf6719668181974104e6fcfa60e844", - "reference": "cac1556fdfdf6719668181974104e6fcfa60e844", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/b50f5e281d722cb0f4c296f908bacc3e2b721957", + "reference": "b50f5e281d722cb0f4c296f908bacc3e2b721957", "shasum": "" }, "require": { @@ -4280,7 +4279,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.3.4" + "source": "https://github.com/symfony/http-foundation/tree/v6.3.5" }, "funding": [ { @@ -4296,20 +4295,20 @@ "type": "tidelift" } ], - "time": "2023-08-22T08:20:46+00:00" + "time": "2023-09-04T21:33:54+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.3.4", + "version": "v6.3.5", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "36abb425b4af863ae1fe54d8a8b8b4c76a2bccdb" + "reference": "9f991a964368bee8d883e8d57ced4fe9fff04dfc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/36abb425b4af863ae1fe54d8a8b8b4c76a2bccdb", - "reference": "36abb425b4af863ae1fe54d8a8b8b4c76a2bccdb", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/9f991a964368bee8d883e8d57ced4fe9fff04dfc", + "reference": "9f991a964368bee8d883e8d57ced4fe9fff04dfc", "shasum": "" }, "require": { @@ -4393,7 +4392,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/v6.3.4" + "source": "https://github.com/symfony/http-kernel/tree/v6.3.5" }, "funding": [ { @@ -4409,7 +4408,7 @@ "type": "tidelift" } ], - "time": "2023-08-26T13:54:49+00:00" + "time": "2023-09-30T06:37:04+00:00" }, { "name": "symfony/monolog-bridge", @@ -5352,16 +5351,16 @@ }, { "name": "symfony/string", - "version": "v6.3.2", + "version": "v6.3.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "53d1a83225002635bca3482fcbf963001313fb68" + "reference": "13d76d0fb049051ed12a04bef4f9de8715bea339" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/53d1a83225002635bca3482fcbf963001313fb68", - "reference": "53d1a83225002635bca3482fcbf963001313fb68", + "url": "https://api.github.com/repos/symfony/string/zipball/13d76d0fb049051ed12a04bef4f9de8715bea339", + "reference": "13d76d0fb049051ed12a04bef4f9de8715bea339", "shasum": "" }, "require": { @@ -5418,7 +5417,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.3.2" + "source": "https://github.com/symfony/string/tree/v6.3.5" }, "funding": [ { @@ -5434,20 +5433,20 @@ "type": "tidelift" } ], - "time": "2023-07-05T08:41:27+00:00" + "time": "2023-09-18T10:38:32+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.3.4", + "version": "v6.3.5", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "2027be14f8ae8eae999ceadebcda5b4909b81d45" + "reference": "3d9999376be5fea8de47752837a3e1d1c5f69ef5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/2027be14f8ae8eae999ceadebcda5b4909b81d45", - "reference": "2027be14f8ae8eae999ceadebcda5b4909b81d45", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/3d9999376be5fea8de47752837a3e1d1c5f69ef5", + "reference": "3d9999376be5fea8de47752837a3e1d1c5f69ef5", "shasum": "" }, "require": { @@ -5502,7 +5501,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.3.4" + "source": "https://github.com/symfony/var-dumper/tree/v6.3.5" }, "funding": [ { @@ -5518,7 +5517,7 @@ "type": "tidelift" } ], - "time": "2023-08-24T14:51:05+00:00" + "time": "2023-09-12T10:11:35+00:00" }, { "name": "symfony/var-exporter", @@ -5791,16 +5790,16 @@ }, { "name": "doctrine/deprecations", - "version": "v1.1.1", + "version": "1.1.2", "source": { "type": "git", "url": "https://github.com/doctrine/deprecations.git", - "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3" + "reference": "4f2d4f2836e7ec4e7a8625e75c6aa916004db931" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/612a3ee5ab0d5dd97b7cf3874a6efe24325efac3", - "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/4f2d4f2836e7ec4e7a8625e75c6aa916004db931", + "reference": "4f2d4f2836e7ec4e7a8625e75c6aa916004db931", "shasum": "" }, "require": { @@ -5832,9 +5831,9 @@ "homepage": "https://www.doctrine-project.org/", "support": { "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/v1.1.1" + "source": "https://github.com/doctrine/deprecations/tree/1.1.2" }, - "time": "2023-06-03T09:27:29+00:00" + "time": "2023-09-27T20:04:15+00:00" }, { "name": "doctrine/lexer", @@ -5926,5 +5925,5 @@ "ext-dom": "*" }, "platform-dev": [], - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.6.0" } diff --git a/resources/templates/html/classic/changelog.html.twig b/resources/templates/html/classic/changelog.html.twig index 764c955..9f6e878 100644 --- a/resources/templates/html/classic/changelog.html.twig +++ b/resources/templates/html/classic/changelog.html.twig @@ -2,4 +2,4 @@ {% include 'release.html.twig' with {release: release, footer: false} %} {% endfor %} -{% include 'footer.html.twig' %} \ No newline at end of file +{% include 'footer.html.twig' with {contributors : releases.contributors} %} \ No newline at end of file diff --git a/resources/templates/html/classic/footer.html.twig b/resources/templates/html/classic/footer.html.twig index a15166a..69ca0d8 100644 --- a/resources/templates/html/classic/footer.html.twig +++ b/resources/templates/html/classic/footer.html.twig @@ -1 +1,8 @@ +

Contributors

+ + \ No newline at end of file diff --git a/resources/templates/html/classic/release.html.twig b/resources/templates/html/classic/release.html.twig index 4dac6f0..832d814 100644 --- a/resources/templates/html/classic/release.html.twig +++ b/resources/templates/html/classic/release.html.twig @@ -4,5 +4,5 @@ {% endif %} {% if footer == true %} -{% include 'footer.html.twig' %} +{% include 'footer.html.twig' with {contributors: release.contributors} %} {% endif %} \ No newline at end of file diff --git a/resources/templates/html/keepachangelog/changelog.html.twig b/resources/templates/html/keepachangelog/changelog.html.twig index 764c955..9f6e878 100644 --- a/resources/templates/html/keepachangelog/changelog.html.twig +++ b/resources/templates/html/keepachangelog/changelog.html.twig @@ -2,4 +2,4 @@ {% include 'release.html.twig' with {release: release, footer: false} %} {% endfor %} -{% include 'footer.html.twig' %} \ No newline at end of file +{% include 'footer.html.twig' with {contributors : releases.contributors} %} \ No newline at end of file diff --git a/resources/templates/html/keepachangelog/footer.html.twig b/resources/templates/html/keepachangelog/footer.html.twig index a15166a..69ca0d8 100644 --- a/resources/templates/html/keepachangelog/footer.html.twig +++ b/resources/templates/html/keepachangelog/footer.html.twig @@ -1 +1,8 @@ +

Contributors

+ + \ No newline at end of file diff --git a/resources/templates/html/keepachangelog/release.html.twig b/resources/templates/html/keepachangelog/release.html.twig index 399aecc..7835f65 100644 --- a/resources/templates/html/keepachangelog/release.html.twig +++ b/resources/templates/html/keepachangelog/release.html.twig @@ -10,5 +10,5 @@ {% endif %} {% if footer == true %} -{% include 'footer.html.twig' %} +{% include 'footer.html.twig' with {contributors: release.contributors} %} {% endif %} \ No newline at end of file diff --git a/resources/templates/markdown/classic/changelog.md.twig b/resources/templates/markdown/classic/changelog.md.twig index bf6db47..4afacc4 100644 --- a/resources/templates/markdown/classic/changelog.md.twig +++ b/resources/templates/markdown/classic/changelog.md.twig @@ -2,4 +2,4 @@ {% include 'release.md.twig' with {release: release, footer: false} %} {% endfor %} -{% include 'footer.md.twig' %} \ No newline at end of file +{% include 'footer.md.twig' with {contributors: releases.contributors} %} \ No newline at end of file diff --git a/resources/templates/markdown/classic/changelog/changelog.html.twig b/resources/templates/markdown/classic/changelog/changelog.html.twig index 6b44f04..ab25ed2 100644 --- a/resources/templates/markdown/classic/changelog/changelog.html.twig +++ b/resources/templates/markdown/classic/changelog/changelog.html.twig @@ -3,5 +3,5 @@ {% endfor %} {% if footer == true %} -{% include 'footer.html.twig' %} +{% include 'footer.html.twig' with {contributors: release.contributors} %} {% endif %} \ No newline at end of file diff --git a/resources/templates/markdown/classic/footer.md.twig b/resources/templates/markdown/classic/footer.md.twig index 419e291..81ff9db 100644 --- a/resources/templates/markdown/classic/footer.md.twig +++ b/resources/templates/markdown/classic/footer.md.twig @@ -1 +1,7 @@ +## Contributors + +{% for contributor in contributors %} +- @{{ contributor.name }} +{% endfor %} + Generated by [Automation](https://github.com/aeon-php/automation) \ No newline at end of file diff --git a/resources/templates/markdown/classic/release.md.twig b/resources/templates/markdown/classic/release.md.twig index df43fcb..6ee3574 100644 --- a/resources/templates/markdown/classic/release.md.twig +++ b/resources/templates/markdown/classic/release.md.twig @@ -4,5 +4,5 @@ {% endif %} {% if footer == true %} -{% include 'footer.md.twig' %} +{% include 'footer.md.twig' with {contributors : release.contributors} %} {% endif %} \ No newline at end of file diff --git a/resources/templates/markdown/keepachangelog/changelog.md.twig b/resources/templates/markdown/keepachangelog/changelog.md.twig index bf6db47..4afacc4 100644 --- a/resources/templates/markdown/keepachangelog/changelog.md.twig +++ b/resources/templates/markdown/keepachangelog/changelog.md.twig @@ -2,4 +2,4 @@ {% include 'release.md.twig' with {release: release, footer: false} %} {% endfor %} -{% include 'footer.md.twig' %} \ No newline at end of file +{% include 'footer.md.twig' with {contributors: releases.contributors} %} \ No newline at end of file diff --git a/resources/templates/markdown/keepachangelog/footer.md.twig b/resources/templates/markdown/keepachangelog/footer.md.twig index 419e291..81ff9db 100644 --- a/resources/templates/markdown/keepachangelog/footer.md.twig +++ b/resources/templates/markdown/keepachangelog/footer.md.twig @@ -1 +1,7 @@ +## Contributors + +{% for contributor in contributors %} +- @{{ contributor.name }} +{% endfor %} + Generated by [Automation](https://github.com/aeon-php/automation) \ No newline at end of file diff --git a/resources/templates/markdown/keepachangelog/release.md.twig b/resources/templates/markdown/keepachangelog/release.md.twig index 4326873..e6eb1c3 100644 --- a/resources/templates/markdown/keepachangelog/release.md.twig +++ b/resources/templates/markdown/keepachangelog/release.md.twig @@ -10,5 +10,5 @@ {% endif %} {% if footer == true %} -{% include 'footer.md.twig' %} +{% include 'footer.md.twig' with {contributors : release.contributors} %} {% endif %} \ No newline at end of file diff --git a/src/Aeon/Automation/Changelog/Source/HTMLSource.php b/src/Aeon/Automation/Changelog/Source/HTMLSource.php index 84acef4..f6d7312 100644 --- a/src/Aeon/Automation/Changelog/Source/HTMLSource.php +++ b/src/Aeon/Automation/Changelog/Source/HTMLSource.php @@ -70,12 +70,12 @@ public function releases() : Releases new Change( new ChangesSource( \strpos($sourceNode->text(), '#') === 0 ? ChangesSource::TYPE_PULL_REQUEST : ChangesSource::TYPE_COMMIT, - \strpos($sourceNode->text(), '#') === 0 ? \substr($sourceNode->text(), 1, \strlen($sourceNode->text()) - 1) : $sourceNode->text(), + \strpos($sourceNode->text(), '#') === 0 ? \substr($sourceNode->text(), 1) : $sourceNode->text(), $sourceNode->attr('href'), $descriptionNode->text(), $descriptionNode->text(), $currentDate->sub(TimeUnit::seconds($change)), - \substr($userNode->text(), 1, \strlen($userNode->text()) - 1), + \substr($userNode->text(), 1), $userNode->attr('href') ), Type::fromString($changeTypeNode->nodeValue), diff --git a/src/Aeon/Automation/Changes/ChangesSource.php b/src/Aeon/Automation/Changes/ChangesSource.php index 0c63eaf..eec7479 100644 --- a/src/Aeon/Automation/Changes/ChangesSource.php +++ b/src/Aeon/Automation/Changes/ChangesSource.php @@ -42,6 +42,19 @@ public function __construct( throw new \InvalidArgumentException('Invalid type: ' . $type); } + if ($user === '1') { + throw new \RuntimeException(\json_encode([ + 'type' => $type, + 'id' => $id, + 'url' => $url, + 'title' => $title, + 'description' => $description, + 'date' => $date->format('Y-m-d H:i:s'), + 'user' => $user, + 'userUrl' => $userUrl, + ])); + } + $this->type = $type; $this->id = $id; $this->url = $url; @@ -167,4 +180,9 @@ public function equals(self $source) : bool return $this->type === $source->type && $this->id === $source->id; } + + public function contributor() : Contributor + { + return new Contributor($this->user, $this->userUrl); + } } diff --git a/src/Aeon/Automation/Changes/Contributor.php b/src/Aeon/Automation/Changes/Contributor.php new file mode 100644 index 0000000..9689025 --- /dev/null +++ b/src/Aeon/Automation/Changes/Contributor.php @@ -0,0 +1,26 @@ +name = $name; + $this->url = $url; + } + + public function name() : string + { + return $this->name; + } + + public function url() : string + { + return $this->url; + } +} diff --git a/src/Aeon/Automation/Release.php b/src/Aeon/Automation/Release.php index b0033cc..30c1e7c 100644 --- a/src/Aeon/Automation/Release.php +++ b/src/Aeon/Automation/Release.php @@ -7,6 +7,7 @@ use Aeon\Automation\Changes\Change; use Aeon\Automation\Changes\Changes; use Aeon\Automation\Changes\ChangesSource; +use Aeon\Automation\Changes\Contributor; use Aeon\Automation\Changes\Type; use Aeon\Calendar\Gregorian\Day; @@ -170,6 +171,29 @@ public function security() : array return $this->sortChanges(Type::security()); } + /** + * @return array + */ + public function contributors() : array + { + /** @var array $contributors */ + $contributors = []; + + foreach ($this->changes as $changes) { + foreach ($changes->all() as $change) { + if (!\array_key_exists($change->source()->contributor()->name(), $contributors)) { + $contributors[$change->source()->contributor()->name()] = $change->source()->contributor(); + } + } + } + + \uasort($contributors, static function (Contributor $authorA, Contributor $authorB) : int { + return \strtolower($authorA->name()) <=> \strtolower($authorB->name()); + }); + + return \array_values($contributors); + } + public function empty() : bool { return \count($this->all()) === 0; diff --git a/src/Aeon/Automation/Releases.php b/src/Aeon/Automation/Releases.php index eaaf4d9..409272b 100644 --- a/src/Aeon/Automation/Releases.php +++ b/src/Aeon/Automation/Releases.php @@ -4,6 +4,7 @@ namespace Aeon\Automation; +use Aeon\Automation\Changes\Contributor; use Composer\Semver\Comparator; final class Releases @@ -62,6 +63,29 @@ public function all() : array return $this->releases; } + /** + * @return array + */ + public function contributors() : array + { + /** @var array $contributors */ + $contributors = []; + + foreach ($this->releases as $release) { + foreach ($release->contributors() as $contributor) { + if (!\array_key_exists($contributor->name(), $contributors)) { + $contributors[$contributor->name()] = $contributor; + } + } + } + + \uasort($contributors, static function (Contributor $authorA, Contributor $authorB) : int { + return \strtolower($authorA->name()) <=> \strtolower($authorB->name()); + }); + + return \array_values($contributors); + } + public function remove(string $name) : self { $releases = []; diff --git a/tests/Aeon/Automation/Tests/Integration/Changelog/ManipulatorTest.php b/tests/Aeon/Automation/Tests/Integration/Changelog/ManipulatorTest.php index 5c77454..a577943 100644 --- a/tests/Aeon/Automation/Tests/Integration/Changelog/ManipulatorTest.php +++ b/tests/Aeon/Automation/Tests/Integration/Changelog/ManipulatorTest.php @@ -109,6 +109,10 @@ public function test_special_characters_in_markdown() : void ### Added - [#214](https://github.com/coduo/php-matcher/pull/214) - **include ArrayMatcher in OrMatcher to fix issues with `@null@||@array@` pattern** - [@mtomala](https://github.com/mtomala) +## Contributors + +- @mtomala + Generated by [Automation](https://github.com/aeon-php/automation) MARKDOWN ); @@ -128,6 +132,10 @@ public function test_not_changing_unreleased_date_when_nothing_was_changed_excep ### Added - [#214](https://github.com/coduo/php-matcher/pull/214) - **include ArrayMatcher in OrMatcher to fix issues with `@null@||@array@` pattern** - [@mtomala](https://github.com/mtomala) +## Contributors + +- @mtomala + Generated by [Automation](https://github.com/aeon-php/automation) MARKDOWN ); diff --git a/tests/Aeon/Automation/Tests/Integration/Changelog/fixtures/php-matcher-changelog.md b/tests/Aeon/Automation/Tests/Integration/Changelog/fixtures/php-matcher-changelog.md index 4e94abc..822fffe 100644 --- a/tests/Aeon/Automation/Tests/Integration/Changelog/fixtures/php-matcher-changelog.md +++ b/tests/Aeon/Automation/Tests/Integration/Changelog/fixtures/php-matcher-changelog.md @@ -555,4 +555,59 @@ - [f085f0](https://github.com/coduo/php-matcher/commit/f085f01f2de5a05488309ef342ad2b06ea60e8c5) - **var name** - [@defrag](https://github.com/defrag) - [3f5b8e](https://github.com/coduo/php-matcher/commit/3f5b8ef9014d2076e615058827598541a79a1362) - **Initial commit** - [@defrag](https://github.com/defrag) +## Contributors + +- @adam187 +- @aeon-automation +- @aitboudad +- @andreasschacht +- @athos7933 +- @B-Galati +- @bendavies +- @benjamin.lazarecki@sensiolabs.com +- @blazarecki +- @bryant1410 +- @cakper +- @Canadadry +- @cordoval +- @defrag +- @domis86 +- @dotdevru +- @drymek +- @eliecharra +- @Gamesh +- @hamuhamu +- @ianrodrigues +- @jakzal +- @JarJak +- @jkobus +- @jmfeurprier +- @K-Phoen +- @kejwmen +- @LeaklessGfy +- @leettastic +- @masseelch +- @mmoreram +- @mtomala +- @nclsHart +- @norberttech +- @norzechowicz +- @Nyholm +- @partikus +- @peter279k +- @piotrjura +- @pskt +- @raing3 +- @robinvdvleuten +- @rpalladino +- @samnela +- @smoench +- @SpartakusMd +- @teklakct +- @thomasbisignani +- @uirapuru +- @vudaltsov +- @yosmanyga +- @yourwebmaker + Generated by [Automation](https://github.com/aeon-php/automation) \ No newline at end of file diff --git a/tests/Aeon/Automation/Tests/Integration/Console/Command/ChangelogGenerateTest.php b/tests/Aeon/Automation/Tests/Integration/Console/Command/ChangelogGenerateTest.php index 06bce50..fc48734 100644 --- a/tests/Aeon/Automation/Tests/Integration/Console/Command/ChangelogGenerateTest.php +++ b/tests/Aeon/Automation/Tests/Integration/Console/Command/ChangelogGenerateTest.php @@ -73,6 +73,10 @@ public function test_changelog_generate_without_parameters_with_tags() : void $localChangelogFile = \sys_get_temp_dir() . '/CHANGELOG.md'; + if (\file_exists($localChangelogFile)) { + \unlink($localChangelogFile); + } + $commandTester->execute( ['project' => 'aeon-php/automation', '--file-update-path' => $localChangelogFile], ['verbosity' => ConsoleOutput::VERBOSITY_VERBOSE] @@ -347,6 +351,10 @@ public function test_changelog_generate_for_given_tag() : void - [#2](http://api.github.com) - **Release 1.1.0 Title - 2** - [@user_login](http//github.com/user_login) - [#1](http://api.github.com) - **Release 1.1.0 Title - 1** - [@user_login](http//github.com/user_login) +## Contributors + +- @user_login + Generated by [Automation](https://github.com/aeon-php/automation) CHANGELOG), 'message' => 'Updated CHANGELOG.md', @@ -720,6 +728,10 @@ public function test_changelog_generate_when_changes_are_only_from_skipped_autho - [#2](http://api.github.com) - **Pull Request 2 Title** - [@user_login](http//github.com/user_login) - [#1](http://api.github.com) - **Pull Request 1 Title** - [@user_login](http//github.com/user_login) +## Contributors + +- @user_login + Generated by [Automation](https://github.com/aeon-php/automation) CHANGELOG), ])), diff --git a/tests/Aeon/Automation/Tests/Integration/Console/Command/Fixtures/CHANGELOG.md b/tests/Aeon/Automation/Tests/Integration/Console/Command/Fixtures/CHANGELOG.md index 55b0223..3327f5d 100644 --- a/tests/Aeon/Automation/Tests/Integration/Console/Command/Fixtures/CHANGELOG.md +++ b/tests/Aeon/Automation/Tests/Integration/Console/Command/Fixtures/CHANGELOG.md @@ -4,4 +4,8 @@ - [#2](http://api.github.com) - **Pull Request 2 Title** - [@user_login](http//github.com/user_login) - [#1](http://api.github.com) - **Pull Request 1 Title** - [@user_login](http//github.com/user_login) +## Contributors + +- @user_login + Generated by [Automation](https://github.com/aeon-php/automation) \ No newline at end of file diff --git a/tests/Aeon/Automation/Tests/Integration/Console/Command/Fixtures/CHANGELOG_ALL.md b/tests/Aeon/Automation/Tests/Integration/Console/Command/Fixtures/CHANGELOG_ALL.md index aa53789..b9b0f1f 100644 --- a/tests/Aeon/Automation/Tests/Integration/Console/Command/Fixtures/CHANGELOG_ALL.md +++ b/tests/Aeon/Automation/Tests/Integration/Console/Command/Fixtures/CHANGELOG_ALL.md @@ -21,4 +21,8 @@ - [ac3478](http://api.github.com) - **Commit 1 - Tag 1.0.0** - [@user_login](http//github.com/user_login) - [c1dfd9](http://api.github.com) - **Commit 2 - Tag 1.0.0** - [@user_login](http//github.com/user_login) +## Contributors + +- @user_login + Generated by [Automation](https://github.com/aeon-php/automation) \ No newline at end of file diff --git a/tests/Aeon/Automation/Tests/Integration/Release/FormatterTest.php b/tests/Aeon/Automation/Tests/Integration/Release/FormatterTest.php index ad5f8b1..95eba60 100644 --- a/tests/Aeon/Automation/Tests/Integration/Release/FormatterTest.php +++ b/tests/Aeon/Automation/Tests/Integration/Release/FormatterTest.php @@ -49,6 +49,10 @@ public function test_markdown_keep_a_changelog_release() : void ### Fixed - [#88](https://github.com/aeon-php/calendar/pull/88) - **include ArrayMatcher in OrMatcher to fix issues with `@null@||@array@` pattern** - [@norberttech](https://github.com/norberttech) +## Contributors + +- @norberttech + Generated by [Automation](https://github.com/aeon-php/automation) MARKDOWN, $formatter->formatRelease($release) @@ -84,6 +88,10 @@ public function test_markdown_classic_release() : void - [#88](https://github.com/aeon-php/calendar/pull/88) - **include ArrayMatcher in OrMatcher to fix issues with `@null@||@array@` pattern** - [@norberttech](https://github.com/norberttech) +## Contributors + +- @norberttech + Generated by [Automation](https://github.com/aeon-php/automation) MARKDOWN, $formatter->formatRelease($release) @@ -122,6 +130,11 @@ public function test_html_keep_a_changelog_release() : void
  • #88 - include ArrayMatcher in OrMatcher to fix issues with `@null@||@array@` pattern - @norberttech
  • +

    Contributors

    + + HTML, $formatter->formatRelease($release) @@ -159,6 +172,11 @@ public function test_html_classic_release() : void
  • #88 - include ArrayMatcher in OrMatcher to fix issues with `@null@||@array@` pattern - @norberttech
  • +

    Contributors

    + + HTML, $formatter->formatRelease($release) @@ -198,6 +216,11 @@ public function test_html_classic_releases() : void
  • #88 - include ArrayMatcher in OrMatcher to fix issues with `@null@||@array@` pattern - @norberttech
  • +

    Contributors

    + + HTML, $formatter->formatReleases($releases) diff --git a/tests/Aeon/Automation/Tests/Mother/GitHub/GitHubResponseMother.php b/tests/Aeon/Automation/Tests/Mother/GitHub/GitHubResponseMother.php index 0cfb3d6..20b1269 100644 --- a/tests/Aeon/Automation/Tests/Mother/GitHub/GitHubResponseMother.php +++ b/tests/Aeon/Automation/Tests/Mother/GitHub/GitHubResponseMother.php @@ -15,7 +15,7 @@ public static function tag(string $name, ?string $sha = null) : array return [ 'name' => $name, 'commit' => [ - 'sha' => $sha ? $sha : SHAMother::random(), + 'sha' => null !== $sha ? $sha : SHAMother::random(), ], ]; } @@ -25,7 +25,7 @@ public static function branch(string $name, ?string $sha = null) : array return [ 'name' => $name, 'commit' => [ - 'sha' => $sha ? $sha : SHAMother::random(), + 'sha' => null !== $sha ? $sha : SHAMother::random(), ], ]; } @@ -44,9 +44,9 @@ public static function refCommit(string $ref, ?string $sha = null) : array 'node_id' => 'MDM6UmVmMjY3NjgzMzQzOnJlZnMvaGVhZHMvMS54', 'url' => 'https://api.github.com/aeon-php/automation/git/refs/heads/1.x', 'object' => [ - 'sha' => $sha ? $sha : SHAMother::random(), + 'sha' => null !== $sha ? $sha : SHAMother::random(), 'type' => 'commit', - 'url' => 'https://api.github.com/repos/aeon-php/automation/git/commits/' . ($sha ? $sha : SHAMother::random()), + 'url' => 'https://api.github.com/repos/aeon-php/automation/git/commits/' . (null !== $sha ? $sha : SHAMother::random()), ], ]; } @@ -54,13 +54,13 @@ public static function refCommit(string $ref, ?string $sha = null) : array public static function commit(string $message, ?string $sha = null, ?string $date = null) : array { return [ - 'sha' => $sha ? $sha : SHAMother::random(), + 'sha' => null !== $sha ? $sha : SHAMother::random(), 'html_url' => 'http://api.github.com', 'message' => $message, 'commit' => [ 'author' => [ 'email' => 'author@email.com', - 'date' => $date ? $date : GregorianCalendar::UTC()->now()->toISO8601(), + 'date' => null !== $date ? $date : GregorianCalendar::UTC()->now()->toISO8601(), ], 'message' => $message, ], @@ -76,20 +76,20 @@ public static function pullRequest(int $number, ?string $title = null, ?string $ return [ 'number' => $number, 'html_url' => 'http://api.github.com', - 'title' => $title ? $title : 'Pull Request Title', - 'body' => $body ? $body : '## Random Markdown Body', + 'title' => null !== $title ? $title : 'Pull Request Title', + 'body' => null !== $body ? $body : '## Random Markdown Body', 'user' => [ - 'login' => $user ? $user : 'user_login', - 'html_url' => $user ? 'http//github.com/' . $user : 'http//github.com/user_login', + 'login' => null !== $user ? $user : 'user_login', + 'html_url' => null !== $user ? 'http//github.com/' . $user : 'http//github.com/user_login', ], - 'merged_at' => $date ? $date : GregorianCalendar::UTC()->now()->toISO8601(), + 'merged_at' => null !== $date ? $date : GregorianCalendar::UTC()->now()->toISO8601(), ]; } public static function workflow(string $name, ?int $id = null) { return [ - 'id' => $id ? $id : \random_int(100000, 1000000), + 'id' => null !== $id ? $id : \random_int(100000, 1000000), 'name' => $name, 'state' => 'active', ]; @@ -98,7 +98,7 @@ public static function workflow(string $name, ?int $id = null) public static function workflowRun(?int $id = null) { return [ - 'id' => $id ? $id : \random_int(100000, 1000000), + 'id' => null !== $id ? $id : \random_int(100000, 1000000), ]; } @@ -114,7 +114,7 @@ public static function workflowRunJob(string $name, string $status, string $conc return [ 'name' => $name, - 'id' => $id ? $id : \random_int(100000, 1000000), + 'id' => null !== $id ? $id : \random_int(100000, 1000000), 'status' => $status, // completed | queued | in_progress 'conclusion' => $conclusion, 'completed_at' => $status === 'completed' ? DateTime::fromString($completedAt)->toISO8601() : null, diff --git a/tools/composer.lock b/tools/composer.lock index b0e1dec..557bf62 100644 --- a/tools/composer.lock +++ b/tools/composer.lock @@ -227,30 +227,30 @@ }, { "name": "doctrine/instantiator", - "version": "1.5.0", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b" + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b", - "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^9 || ^11", + "doctrine/coding-standard": "^11", "ext-pdo": "*", "ext-phar": "*", - "phpbench/phpbench": "^0.16 || ^1", - "phpstan/phpstan": "^1.4", - "phpstan/phpstan-phpunit": "^1", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.30 || ^5.4" + "phpbench/phpbench": "^1.2", + "phpstan/phpstan": "^1.9.4", + "phpstan/phpstan-phpunit": "^1.3", + "phpunit/phpunit": "^9.5.27", + "vimeo/psalm": "^5.4" }, "type": "library", "autoload": { @@ -277,7 +277,7 @@ ], "support": { "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.5.0" + "source": "https://github.com/doctrine/instantiator/tree/2.0.0" }, "funding": [ { @@ -293,7 +293,7 @@ "type": "tidelift" } ], - "time": "2022-12-30T00:15:36+00:00" + "time": "2022-12-30T00:23:10+00:00" }, { "name": "friendsofphp/php-cs-fixer", @@ -1043,22 +1043,27 @@ }, { "name": "psr/container", - "version": "1.1.2", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", "shasum": "" }, "require": { "php": ">=7.4.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, "autoload": { "psr-4": { "Psr\\Container\\": "src/" @@ -1085,9 +1090,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/2.0.2" }, - "time": "2021-11-05T16:50:12+00:00" + "time": "2021-11-05T16:47:00+00:00" }, { "name": "psr/event-dispatcher", @@ -1141,30 +1146,30 @@ }, { "name": "psr/log", - "version": "1.1.4", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11" + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11", + "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001", + "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "3.x-dev" } }, "autoload": { "psr-4": { - "Psr\\Log\\": "Psr/Log/" + "Psr\\Log\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -1185,9 +1190,9 @@ "psr-3" ], "support": { - "source": "https://github.com/php-fig/log/tree/1.1.4" + "source": "https://github.com/php-fig/log/tree/3.0.0" }, - "time": "2021-05-03T11:20:27+00:00" + "time": "2021-07-14T16:46:02+00:00" }, { "name": "sebastian/cli-parser", @@ -2155,52 +2160,43 @@ }, { "name": "symfony/console", - "version": "v5.4.28", + "version": "v6.3.4", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "f4f71842f24c2023b91237c72a365306f3c58827" + "reference": "eca495f2ee845130855ddf1cf18460c38966c8b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/f4f71842f24c2023b91237c72a365306f3c58827", - "reference": "f4f71842f24c2023b91237c72a365306f3c58827", + "url": "https://api.github.com/repos/symfony/console/zipball/eca495f2ee845130855ddf1cf18460c38966c8b6", + "reference": "eca495f2ee845130855ddf1cf18460c38966c8b6", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.1|^6.0" + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^5.4|^6.0" }, "conflict": { - "psr/log": ">=3", - "symfony/dependency-injection": "<4.4", - "symfony/dotenv": "<5.1", - "symfony/event-dispatcher": "<4.4", - "symfony/lock": "<4.4", - "symfony/process": "<4.4" + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" }, "provide": { - "psr/log-implementation": "1.0|2.0" + "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { - "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/lock": "^4.4|^5.0|^6.0", - "symfony/process": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/event-dispatcher": "^5.4|^6.0", + "symfony/lock": "^5.4|^6.0", + "symfony/process": "^5.4|^6.0", + "symfony/var-dumper": "^5.4|^6.0" }, "type": "library", "autoload": { @@ -2234,7 +2230,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.28" + "source": "https://github.com/symfony/console/tree/v6.3.4" }, "funding": [ { @@ -2250,29 +2246,29 @@ "type": "tidelift" } ], - "time": "2023-08-07T06:12:30+00:00" + "time": "2023-08-16T10:10:12+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v2.5.2", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66" + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66", - "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf", + "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -2301,7 +2297,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.2" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.3.0" }, "funding": [ { @@ -2317,48 +2313,43 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.4.26", + "version": "v6.3.2", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "5dcc00e03413f05c1e7900090927bb7247cb0aac" + "reference": "adb01fe097a4ee930db9258a3cc906b5beb5cf2e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/5dcc00e03413f05c1e7900090927bb7247cb0aac", - "reference": "5dcc00e03413f05c1e7900090927bb7247cb0aac", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/adb01fe097a4ee930db9258a3cc906b5beb5cf2e", + "reference": "adb01fe097a4ee930db9258a3cc906b5beb5cf2e", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/event-dispatcher-contracts": "^2|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2.5|^3" }, "conflict": { - "symfony/dependency-injection": "<4.4" + "symfony/dependency-injection": "<5.4", + "symfony/service-contracts": "<2.5" }, "provide": { "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "2.0" + "symfony/event-dispatcher-implementation": "2.0|3.0" }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/http-foundation": "^4.4|^5.0|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/stopwatch": "^4.4|^5.0|^6.0" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/error-handler": "^5.4|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/http-foundation": "^5.4|^6.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/stopwatch": "^5.4|^6.0" }, "type": "library", "autoload": { @@ -2386,7 +2377,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.26" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.3.2" }, "funding": [ { @@ -2402,33 +2393,30 @@ "type": "tidelift" } ], - "time": "2023-07-06T06:34:20+00:00" + "time": "2023-07-06T06:56:43+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v2.5.2", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "f98b54df6ad059855739db6fcbc2d36995283fe1" + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/f98b54df6ad059855739db6fcbc2d36995283fe1", - "reference": "f98b54df6ad059855739db6fcbc2d36995283fe1", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df", + "reference": "a76aed96a42d2b521153fb382d418e30d18b59df", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "psr/event-dispatcher": "^1" }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -2465,7 +2453,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.2" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.3.0" }, "funding": [ { @@ -2481,27 +2469,26 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/filesystem", - "version": "v5.4.25", + "version": "v6.3.1", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "0ce3a62c9579a53358d3a7eb6b3dfb79789a6364" + "reference": "edd36776956f2a6fcf577edb5b05eb0e3bdc52ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/0ce3a62c9579a53358d3a7eb6b3dfb79789a6364", - "reference": "0ce3a62c9579a53358d3a7eb6b3dfb79789a6364", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/edd36776956f2a6fcf577edb5b05eb0e3bdc52ae", + "reference": "edd36776956f2a6fcf577edb5b05eb0e3bdc52ae", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.8", - "symfony/polyfill-php80": "^1.16" + "symfony/polyfill-mbstring": "~1.8" }, "type": "library", "autoload": { @@ -2529,7 +2516,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.25" + "source": "https://github.com/symfony/filesystem/tree/v6.3.1" }, "funding": [ { @@ -2545,26 +2532,27 @@ "type": "tidelift" } ], - "time": "2023-05-31T13:04:02+00:00" + "time": "2023-06-01T08:30:39+00:00" }, { "name": "symfony/finder", - "version": "v5.4.27", + "version": "v6.3.5", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "ff4bce3c33451e7ec778070e45bd23f74214cd5d" + "reference": "a1b31d88c0e998168ca7792f222cbecee47428c4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/ff4bce3c33451e7ec778070e45bd23f74214cd5d", - "reference": "ff4bce3c33451e7ec778070e45bd23f74214cd5d", + "url": "https://api.github.com/repos/symfony/finder/zipball/a1b31d88c0e998168ca7792f222cbecee47428c4", + "reference": "a1b31d88c0e998168ca7792f222cbecee47428c4", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0" }, "type": "library", "autoload": { @@ -2592,7 +2580,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.27" + "source": "https://github.com/symfony/finder/tree/v6.3.5" }, "funding": [ { @@ -2608,27 +2596,25 @@ "type": "tidelift" } ], - "time": "2023-07-31T08:02:31+00:00" + "time": "2023-09-26T12:56:25+00:00" }, { "name": "symfony/options-resolver", - "version": "v5.4.21", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "4fe5cf6ede71096839f0e4b4444d65dd3a7c1eb9" + "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/4fe5cf6ede71096839f0e4b4444d65dd3a7c1eb9", - "reference": "4fe5cf6ede71096839f0e4b4444d65dd3a7c1eb9", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/a10f19f5198d589d5c33333cffe98dc9820332dd", + "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php73": "~1.0", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -2661,7 +2647,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.4.21" + "source": "https://github.com/symfony/options-resolver/tree/v6.3.0" }, "funding": [ { @@ -2677,7 +2663,7 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:03:56+00:00" + "time": "2023-05-12T14:21:09+00:00" }, { "name": "symfony/polyfill-ctype", @@ -3009,85 +2995,6 @@ ], "time": "2023-07-28T09:04:16+00:00" }, - { - "name": "symfony/polyfill-php73", - "version": "v1.28.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fe2f306d1d9d346a7fee353d0d5012e401e984b5", - "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.28-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.28.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2023-01-26T09:26:14+00:00" - }, { "name": "symfony/polyfill-php80", "version": "v1.28.0", @@ -3252,21 +3159,20 @@ }, { "name": "symfony/process", - "version": "v5.4.28", + "version": "v6.3.4", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "45261e1fccad1b5447a8d7a8e67aa7b4a9798b7b" + "reference": "0b5c29118f2e980d455d2e34a5659f4579847c54" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/45261e1fccad1b5447a8d7a8e67aa7b4a9798b7b", - "reference": "45261e1fccad1b5447a8d7a8e67aa7b4a9798b7b", + "url": "https://api.github.com/repos/symfony/process/zipball/0b5c29118f2e980d455d2e34a5659f4579847c54", + "reference": "0b5c29118f2e980d455d2e34a5659f4579847c54", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -3294,7 +3200,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.28" + "source": "https://github.com/symfony/process/tree/v6.3.4" }, "funding": [ { @@ -3310,37 +3216,33 @@ "type": "tidelift" } ], - "time": "2023-08-07T10:36:04+00:00" + "time": "2023-08-07T10:39:22+00:00" }, { "name": "symfony/service-contracts", - "version": "v2.5.2", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c" + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/4b426aac47d6427cc1a1d0f7e2ac724627f5966c", - "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", + "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4", "shasum": "" }, "require": { - "php": ">=7.2.5", - "psr/container": "^1.1", - "symfony/deprecation-contracts": "^2.1|^3" + "php": ">=8.1", + "psr/container": "^2.0" }, "conflict": { "ext-psr": "<1.1|>=2" }, - "suggest": { - "symfony/service-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -3350,7 +3252,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\Service\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3377,7 +3282,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.5.2" + "source": "https://github.com/symfony/service-contracts/tree/v3.3.0" }, "funding": [ { @@ -3393,25 +3298,25 @@ "type": "tidelift" } ], - "time": "2022-05-30T19:17:29+00:00" + "time": "2023-05-23T14:45:45+00:00" }, { "name": "symfony/stopwatch", - "version": "v5.4.21", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "f83692cd869a6f2391691d40a01e8acb89e76fee" + "reference": "fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/f83692cd869a6f2391691d40a01e8acb89e76fee", - "reference": "f83692cd869a6f2391691d40a01e8acb89e76fee", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2", + "reference": "fc47f1015ec80927ff64ba9094dfe8b9d48fe9f2", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/service-contracts": "^1|^2|^3" + "php": ">=8.1", + "symfony/service-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -3439,7 +3344,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.21" + "source": "https://github.com/symfony/stopwatch/tree/v6.3.0" }, "funding": [ { @@ -3455,38 +3360,38 @@ "type": "tidelift" } ], - "time": "2023-02-14T08:03:56+00:00" + "time": "2023-02-16T10:14:28+00:00" }, { "name": "symfony/string", - "version": "v5.4.29", + "version": "v6.3.5", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "e41bdc93def20eaf3bfc1537c4e0a2b0680a152d" + "reference": "13d76d0fb049051ed12a04bef4f9de8715bea339" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/e41bdc93def20eaf3bfc1537c4e0a2b0680a152d", - "reference": "e41bdc93def20eaf3bfc1537c4e0a2b0680a152d", + "url": "https://api.github.com/repos/symfony/string/zipball/13d76d0fb049051ed12a04bef4f9de8715bea339", + "reference": "13d76d0fb049051ed12a04bef4f9de8715bea339", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", - "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php80": "~1.15" + "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": ">=3.0" + "symfony/translation-contracts": "<2.5" }, "require-dev": { - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/http-client": "^4.4|^5.0|^6.0", - "symfony/translation-contracts": "^1.1|^2", - "symfony/var-exporter": "^4.4|^5.0|^6.0" + "symfony/error-handler": "^5.4|^6.0", + "symfony/http-client": "^5.4|^6.0", + "symfony/intl": "^6.2", + "symfony/translation-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^5.4|^6.0" }, "type": "library", "autoload": { @@ -3525,7 +3430,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.29" + "source": "https://github.com/symfony/string/tree/v6.3.5" }, "funding": [ { @@ -3541,7 +3446,7 @@ "type": "tidelift" } ], - "time": "2023-09-13T11:47:41+00:00" + "time": "2023-09-18T10:38:32+00:00" }, { "name": "theseer/tokenizer", @@ -3601,5 +3506,5 @@ "prefer-lowest": false, "platform": [], "platform-dev": [], - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.6.0" }