├── Resources
├── demo.gif
└── logo.png
├── .gitignore
├── CHANGELOG.md
├── phpunit.xml.dist
├── VERSIONING.md
├── LICENSE
├── composer.json
├── .php-cs-fixer.php
├── tests
└── NotifierPluginTest.php
├── README.md
├── src
└── NotifierPlugin.php
├── .github
└── workflows
│ └── ci.yml
├── CONTRIBUTING.md
└── composer.lock
/Resources/demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyrech/composer-notifier/HEAD/Resources/demo.gif
--------------------------------------------------------------------------------
/Resources/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pyrech/composer-notifier/HEAD/Resources/logo.png
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Dependencies
2 | /vendor
3 |
4 | # Composer
5 | composer.phar
6 |
7 | # PHP-cs-fixer
8 | .php-cs-fixer.cache
9 |
10 | # PHPUnit
11 | .phpunit.result.cache
12 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changes between versions
2 |
3 | ## 1.1.0 (2023-01-07)
4 |
5 | * Added support for Composer v2 APIs
6 | * Dropped support for PHP < 7.4
7 | * Added unit tests and setup CI
8 | * Modernize code base
9 | * Update code style to recent standards
10 |
11 | ## 1.0.3 (2015-06-11)
12 |
13 | * Fixed the Composer version required
14 |
15 | ## 1.0.2 (2015-04-26)
16 |
17 | * Fixed the use of a deprecated Composer class
18 |
19 | ## 1.0.1 (2015-04-15)
20 |
21 | * Fixed notification messages
22 | * Fixed listener priorities
23 |
24 | ## 1.0 (2015-04-14)
25 |
26 | * Initial release
27 |
--------------------------------------------------------------------------------
/phpunit.xml.dist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | ./
6 |
7 |
8 | ./vendor
9 | ./tests
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | ./tests/
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/VERSIONING.md:
--------------------------------------------------------------------------------
1 | # Versioning and branching models
2 |
3 | This file explains the versioning and branching models of this project.
4 |
5 | ## Versioning
6 |
7 | The versioning is inspired by [Semantic Versioning](http://semver.org/):
8 |
9 | > Given a version number MAJOR.MINOR.PATCH, increment the:
10 | >
11 | > 1. MAJOR version when you make incompatible API changes
12 | > 2. MINOR version when you add functionality in a backwards-compatible manner
13 | > 3. PATCH version when you make backwards-compatible bug fixes
14 |
15 | ## Branching Model
16 |
17 | The branching is inspired by [@jbenet](https://github.com/jbenet)
18 | [simple git branching model](https://gist.github.com/jbenet/ee6c9ac48068889b0912):
19 |
20 | > 1. `main` must always be deployable.
21 | > 2. **all changes** are made through feature branches (pull-request + merge)
22 | > 3. rebase to avoid/resolve conflicts; merge in to `main`
23 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2015 Loïck Piera
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is furnished
8 | to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in all
11 | copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "pyrech/composer-notifier",
3 | "description": "Display desktop notifications when composer finishes to install / update",
4 | "keywords": ["composer", "plugin", "notification"],
5 | "license": "MIT",
6 | "type": "composer-plugin",
7 | "authors": [
8 | {
9 | "name": "Loïck Piera",
10 | "email": "pyrech@gmail.com"
11 | }
12 | ],
13 | "require": {
14 | "php": ">=7.4",
15 | "composer-plugin-api": "^1.0 || ^2.0",
16 | "jolicode/jolinotif": "~2.0"
17 | },
18 | "require-dev": {
19 | "composer/composer": "^2.0",
20 | "friendsofphp/php-cs-fixer": "^3.0",
21 | "symfony/phpunit-bridge": "^6.2"
22 | },
23 | "autoload": {
24 | "psr-4": {
25 | "Pyrech\\ComposerNotifier\\": "src/"
26 | }
27 | },
28 | "autoload-dev": {
29 | "psr-4": {
30 | "Pyrech\\ComposerNotifier\\tests\\": "tests/"
31 | }
32 | },
33 | "config": {
34 | "sort-packages": true,
35 | "allow-plugins": {
36 | "pyrech/composer-notifier": true
37 | }
38 | },
39 | "extra": {
40 | "class": "Pyrech\\ComposerNotifier\\NotifierPlugin"
41 | },
42 | "scripts": {
43 | "cs": "vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php --diff --dry-run --verbose",
44 | "fix-cs": "vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php --diff --verbose",
45 | "test": "vendor/bin/simple-phpunit"
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/.php-cs-fixer.php:
--------------------------------------------------------------------------------
1 |
7 |
8 | For the full copyright and license information, please view the LICENSE
9 | file that was distributed with this source code.
10 | EOF;
11 |
12 | $finder = PhpCsFixer\Finder::create()
13 | ->in([__DIR__])
14 | ;
15 |
16 | $config = new PhpCsFixer\Config();
17 | $config
18 | ->setRiskyAllowed(true)
19 | ->setRules([
20 | '@Symfony' => true,
21 | 'array_syntax' => ['syntax' => 'short'], // Replace array() by []
22 | 'blank_line_after_opening_tag' => true, // Force new line after ['spacing' => 'one'], // Force space around concatenation operator
24 | 'header_comment' => ['header' => $header], // Add the provided header comment ($header)
25 | 'heredoc_to_nowdoc' => false, // Do not convert heredoc to nowdoc
26 | 'no_superfluous_phpdoc_tags' => false, // Ensure complete PHPDoc annotations for all params
27 | 'phpdoc_order' => true, // Order "use" statements alphabetically
28 | 'simplified_null_return' => false, // Keep return null;
29 | 'single_line_throw' => false, // Allow throwing exceptions in more than one row
30 | 'strict_comparison' => true, // Strict comparison
31 | 'strict_param' => true, // Functions should use $strict param
32 | ])
33 | ->setUsingCache(true)
34 | ->setFinder($finder)
35 | ;
36 |
37 | return $config;
38 |
--------------------------------------------------------------------------------
/tests/NotifierPluginTest.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | namespace Pyrech\ComposerNotifier\tests;
13 |
14 | use Composer\Composer;
15 | use Composer\Factory;
16 | use Composer\IO\BufferIO;
17 | use Composer\Package\Package;
18 | use Composer\Script\ScriptEvents;
19 | use Joli\JoliNotif\Notifier;
20 | use PHPUnit\Framework\TestCase;
21 | use Pyrech\ComposerNotifier\NotifierPlugin;
22 |
23 | class NotifierPluginTest extends TestCase
24 | {
25 | private Composer $composer;
26 |
27 | /**
28 | * {@inheritdoc}
29 | */
30 | protected function setUp(): void
31 | {
32 | $this->composer = Factory::create(new BufferIO());
33 | }
34 |
35 | public function testItIsRegisteredAndActivated()
36 | {
37 | $plugin = new NotifierPlugin();
38 |
39 | $pluginManager = $this->composer->getPluginManager();
40 | $pluginManager->addPlugin($plugin, false, new Package('pyrech/composer-notifier', '1', 'v1'));
41 |
42 | $this->assertSame([$plugin], $this->composer->getPluginManager()->getPlugins());
43 | }
44 |
45 | public function testEventsAreHandled()
46 | {
47 | $notifier = $this->createMock(Notifier::class);
48 |
49 | $notifier
50 | ->expects($this->exactly(1))
51 | ->method('send')
52 | ->willReturn(true)
53 | ;
54 |
55 | $plugin = new NotifierPlugin($notifier);
56 |
57 | $pluginManager = $this->composer->getPluginManager();
58 | $pluginManager->addPlugin($plugin, false, new Package('pyrech/composer-notifier', '1', 'v1'));
59 |
60 | $this->composer->getEventDispatcher()->dispatchScript(ScriptEvents::POST_INSTALL_CMD);
61 | }
62 | }
63 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # composer-notifier
2 |
3 | [](https://packagist.org/packages/pyrech/composer-notifier) [](https://packagist.org/packages/pyrech/composer-notifier) [](https://packagist.org/packages/pyrech/composer-notifier)
4 |
5 | composer-notifier is a plugin for Composer. It displays desktop notification when
6 | Composer finishes install/update commands.
7 |
8 | 
9 |
10 | ## Installation
11 |
12 | You can install it either locally:
13 |
14 | ```shell
15 | composer require "pyrech/composer-notifier"
16 | ```
17 |
18 | or globally:
19 |
20 | ```shell
21 | composer global require "pyrech/composer-notifier"
22 | ```
23 |
24 | ## Usage
25 |
26 | That's it! Composer will enable automatically the plugin as soon it's
27 | installed. Just run your Composer commands as usual :)
28 |
29 | If you no longer want to display notifications, you can either:
30 | - run your Composer command with the option `--no-plugins`
31 | - uninstall the package
32 |
33 | ## Further documentation
34 |
35 | You can see the current and past versions using one of the following:
36 |
37 | * the `git tag` command
38 | * the [releases page on Github](https://github.com/pyrech/composer-notifier/releases)
39 | * the file listing the [changes between versions](CHANGELOG.md)
40 |
41 | And finally some meta documentation:
42 |
43 | * [versioning and branching models](VERSIONING.md)
44 | * [contribution instructions](CONTRIBUTING.md)
45 |
46 | ## Credits
47 |
48 | * [Loïck Piera](https://github.com/pyrech)
49 | * [All contributors](https://github.com/pyrech/composer-notifier/graphs/contributors)
50 |
51 | ## License
52 |
53 | composer-notifier is licensed under the MIT License - see the [LICENSE](LICENSE)
54 | file for details.
55 |
--------------------------------------------------------------------------------
/src/NotifierPlugin.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | namespace Pyrech\ComposerNotifier;
13 |
14 | use Composer\Composer;
15 | use Composer\EventDispatcher\EventSubscriberInterface;
16 | use Composer\IO\IOInterface;
17 | use Composer\Plugin\PluginInterface;
18 | use Composer\Script\Event;
19 | use Composer\Script\ScriptEvents;
20 | use Joli\JoliNotif\Notification;
21 | use Joli\JoliNotif\Notifier;
22 | use Joli\JoliNotif\NotifierFactory;
23 |
24 | class NotifierPlugin implements PluginInterface, EventSubscriberInterface
25 | {
26 | protected ?Composer $composer = null;
27 | private ?Notifier $notifier;
28 |
29 | public function __construct(Notifier $notifier = null)
30 | {
31 | $this->notifier = $notifier ?: NotifierFactory::create();
32 | }
33 |
34 | public function activate(Composer $composer, IOInterface $io): void
35 | {
36 | $this->composer = $composer;
37 | }
38 |
39 | public function deactivate(Composer $composer, IOInterface $io): void
40 | {
41 | }
42 |
43 | public function uninstall(Composer $composer, IOInterface $io): void
44 | {
45 | }
46 |
47 | public static function getSubscribedEvents(): array
48 | {
49 | return [
50 | ScriptEvents::POST_INSTALL_CMD => [
51 | ['postInstall', -10000],
52 | ],
53 | ScriptEvents::POST_UPDATE_CMD => [
54 | ['postUpdate', -10000],
55 | ],
56 | ];
57 | }
58 |
59 | public function postInstall(Event $event): void
60 | {
61 | $this->notify('Composer just finished the install command');
62 | }
63 |
64 | public function postUpdate(Event $event): void
65 | {
66 | $this->notify('Composer just finished the update command');
67 | }
68 |
69 | private function getProjectName(): string
70 | {
71 | return $this->composer->getPackage()->getName();
72 | }
73 |
74 | private function notify(string $body): void
75 | {
76 | if (!$this->notifier) {
77 | return;
78 | }
79 |
80 | $notification =
81 | (new Notification())
82 | ->setTitle($this->getProjectName())
83 | ->setBody($body)
84 | ->setIcon(__DIR__ . '/../Resources/logo.png')
85 | ;
86 |
87 | $this->notifier->send($notification);
88 | }
89 | }
90 |
--------------------------------------------------------------------------------
/.github/workflows/ci.yml:
--------------------------------------------------------------------------------
1 | name: CI
2 |
3 | on:
4 | push:
5 | branches: [ main ]
6 | pull_request:
7 | schedule:
8 | - cron: '0 0 * * MON'
9 |
10 | jobs:
11 | check-cs:
12 | name: Check Coding Standards
13 | runs-on: ubuntu-latest
14 | steps:
15 | - name: Checkout
16 | uses: actions/checkout@v2
17 |
18 | - name: PHP-CS-Fixer
19 | uses: docker://oskarstark/php-cs-fixer-ga
20 | with:
21 | args: --config=.php-cs-fixer.php --diff --dry-run
22 |
23 | ci:
24 | name: Test PHP ${{ matrix.php-version }} ${{ matrix.name }}
25 | runs-on: ubuntu-latest
26 | strategy:
27 | fail-fast: false
28 | matrix:
29 | php-version: ['7.4', '8.0', '8.1', '8.2']
30 | minimum-stability: ['']
31 | composer-flags: ['']
32 | name: ['']
33 | include:
34 | - php-version: 7.4
35 | composer-flags: '--prefer-lowest'
36 | name: '(prefer lowest dependencies)'
37 | - php-version: 8.2
38 | minimum-stability: 'dev'
39 | name: '(minimum dev stability)'
40 | steps:
41 | - name: Checkout
42 | uses: actions/checkout@v2
43 |
44 | - name: Setup PHP, with composer and extensions
45 | uses: shivammathur/setup-php@v2
46 | with:
47 | php-version: ${{ matrix.php-version }}
48 | extensions: mbstring, xml
49 | ini-values: phar.readonly="Off"
50 |
51 | - name: Get composer cache directory
52 | id: composer-cache
53 | run: echo "::set-output name=dir::$(composer config cache-files-dir)"
54 |
55 | - name: Cache composer dependencies
56 | uses: actions/cache@v2
57 | with:
58 | path: ${{ steps.composer-cache.outputs.dir }}
59 | key: ${{ runner.os }}-composer-${{ github.sha }}
60 | restore-keys: ${{ runner.os }}-composer-
61 |
62 | - name: Allow dev dependencies
63 | run: if [ "${{ matrix.minimum-stability }}" = "dev" ]; then perl -pi -e 's/^}$/,"minimum-stability":"dev"}/' composer.json; fi;
64 |
65 | - name: Install Composer dependencies
66 | run: composer update --prefer-dist --no-interaction ${{ matrix.composer-flags }}
67 |
68 | - name: Run Tests
69 | run: php vendor/bin/simple-phpunit
70 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing
2 |
3 | First of all, **thank you** for contributing, **you are awesome**!
4 |
5 | Everybody should be able to help. Here's how you can do it:
6 |
7 | 1. [Fork it](https://github.com/pyrech/composer-notifier/fork_select)
8 | 2. improve it
9 | 3. submit a [pull request](https://help.github.com/articles/creating-a-pull-request)
10 |
11 | Here's some tips to make you the best contributor ever:
12 |
13 | * [Rules](#rules)
14 | * [Green tests](#green-tests)
15 | * [Standard code](#standard-code)
16 | * [Keeping your fork up-to-date](#keeping-your-fork-up-to-date)
17 |
18 | ## Rules
19 |
20 | Here are a few rules to follow in order to ease code reviews, and discussions
21 | before maintainers accept and merge your work.
22 |
23 | * You MUST follow the [PSR-1](http://www.php-fig.org/psr/1/) and
24 | [PSR-2](http://www.php-fig.org/psr/2/) (see [Rules](#rules)).
25 | * You MUST run the test suite (see [Green tests](#green-tests)).
26 | * You MUST write (or update) unit tests.
27 | * You SHOULD write documentation.
28 |
29 | Please, write [commit messages that make
30 | sense](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html),
31 | and [rebase your branch](http://git-scm.com/book/en/Git-Branching-Rebasing)
32 | before submitting your Pull Request (see also how to [keep your
33 | fork up-to-date](#keeping-your-fork-up-to-date)).
34 |
35 | One may ask you to [squash your
36 | commits](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html)
37 | too. This is used to "clean" your Pull Request before merging it (we don't want
38 | commits such as `fix tests`, `fix 2`, `fix 3`, etc.).
39 |
40 | Also, while creating your Pull Request on GitHub, you MUST write a description
41 | which gives the context and/or explains why you are creating it.
42 |
43 | Your work will then be reviewed as soon as possible (suggestions about some
44 | changes, improvements or alternatives may be given).
45 |
46 | ## Green tests
47 |
48 | Run the tests using the following script:
49 |
50 | ```shell
51 | vendor/bin/simple-phpunit
52 | ```
53 | or the alias:
54 | ```shell
55 | composer test
56 | ```
57 |
58 | ## Standard code
59 |
60 | Use [PHP CS fixer](https://cs.symfony.com/) to make your code compliant with
61 | composer-notifier's coding standards:
62 |
63 | ```shell
64 | vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php --diff
65 | ```
66 | or the alias:
67 | ```shell
68 | composer fix-cs
69 | ```
70 |
71 | ## Keeping your fork up-to-date
72 |
73 | To keep your fork up-to-date, you should track the upstream (original) one
74 | using the following command:
75 |
76 |
77 | ```shell
78 | git remote add upstream https://github.com/pyrech/composer-notifier.git
79 | ```
80 |
81 | Then get the upstream changes:
82 |
83 | ```shell
84 | git checkout main
85 | git pull --rebase origin main
86 | git pull --rebase upstream main
87 | git checkout
88 | git rebase main
89 | ```
90 |
91 | Finally, publish your changes:
92 |
93 | ```shell
94 | git push -f origin
95 | ```
96 |
97 | Your pull request will be automatically updated.
98 |
99 | Thank you!
100 |
--------------------------------------------------------------------------------
/composer.lock:
--------------------------------------------------------------------------------
1 | {
2 | "_readme": [
3 | "This file locks the dependencies of your project to a known state",
4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5 | "This file is @generated automatically"
6 | ],
7 | "content-hash": "d6fad925516bfdcafb05984bf19fbc06",
8 | "packages": [
9 | {
10 | "name": "jolicode/jolinotif",
11 | "version": "v2.5.0",
12 | "source": {
13 | "type": "git",
14 | "url": "https://github.com/jolicode/JoliNotif.git",
15 | "reference": "a10a7cb3bf6dbf8833d1d1f1f0554506cb1d9eaa"
16 | },
17 | "dist": {
18 | "type": "zip",
19 | "url": "https://api.github.com/repos/jolicode/JoliNotif/zipball/a10a7cb3bf6dbf8833d1d1f1f0554506cb1d9eaa",
20 | "reference": "a10a7cb3bf6dbf8833d1d1f1f0554506cb1d9eaa",
21 | "shasum": ""
22 | },
23 | "require": {
24 | "php": ">=8.0",
25 | "symfony/process": "^5.4 || ^6.0"
26 | },
27 | "require-dev": {
28 | "friendsofphp/php-cs-fixer": "^3.13",
29 | "symfony/finder": "^5.4 || ^6.0",
30 | "symfony/phpunit-bridge": "^5.4 || ^6.0"
31 | },
32 | "bin": [
33 | "jolinotif"
34 | ],
35 | "type": "library",
36 | "autoload": {
37 | "psr-4": {
38 | "Joli\\JoliNotif\\": "src/"
39 | }
40 | },
41 | "notification-url": "https://packagist.org/downloads/",
42 | "license": [
43 | "MIT"
44 | ],
45 | "authors": [
46 | {
47 | "name": "Loïck Piera",
48 | "email": "pyrech@gmail.com"
49 | }
50 | ],
51 | "description": "Send desktop notifications on Windows, Linux, MacOS.",
52 | "keywords": [
53 | "MAC",
54 | "growl",
55 | "linux",
56 | "notification",
57 | "windows"
58 | ],
59 | "support": {
60 | "issues": "https://github.com/jolicode/JoliNotif/issues",
61 | "source": "https://github.com/jolicode/JoliNotif/tree/v2.5.0"
62 | },
63 | "funding": [
64 | {
65 | "url": "https://tidelift.com/funding/github/packagist/jolicode/jolinotif",
66 | "type": "tidelift"
67 | }
68 | ],
69 | "time": "2022-12-24T13:38:12+00:00"
70 | },
71 | {
72 | "name": "symfony/process",
73 | "version": "v6.2.0",
74 | "source": {
75 | "type": "git",
76 | "url": "https://github.com/symfony/process.git",
77 | "reference": "ba6e55359f8f755fe996c58a81e00eaa67a35877"
78 | },
79 | "dist": {
80 | "type": "zip",
81 | "url": "https://api.github.com/repos/symfony/process/zipball/ba6e55359f8f755fe996c58a81e00eaa67a35877",
82 | "reference": "ba6e55359f8f755fe996c58a81e00eaa67a35877",
83 | "shasum": ""
84 | },
85 | "require": {
86 | "php": ">=8.1"
87 | },
88 | "type": "library",
89 | "autoload": {
90 | "psr-4": {
91 | "Symfony\\Component\\Process\\": ""
92 | },
93 | "exclude-from-classmap": [
94 | "/Tests/"
95 | ]
96 | },
97 | "notification-url": "https://packagist.org/downloads/",
98 | "license": [
99 | "MIT"
100 | ],
101 | "authors": [
102 | {
103 | "name": "Fabien Potencier",
104 | "email": "fabien@symfony.com"
105 | },
106 | {
107 | "name": "Symfony Community",
108 | "homepage": "https://symfony.com/contributors"
109 | }
110 | ],
111 | "description": "Executes commands in sub-processes",
112 | "homepage": "https://symfony.com",
113 | "support": {
114 | "source": "https://github.com/symfony/process/tree/v6.2.0"
115 | },
116 | "funding": [
117 | {
118 | "url": "https://symfony.com/sponsor",
119 | "type": "custom"
120 | },
121 | {
122 | "url": "https://github.com/fabpot",
123 | "type": "github"
124 | },
125 | {
126 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
127 | "type": "tidelift"
128 | }
129 | ],
130 | "time": "2022-11-02T09:08:04+00:00"
131 | }
132 | ],
133 | "packages-dev": [
134 | {
135 | "name": "composer/ca-bundle",
136 | "version": "1.3.4",
137 | "source": {
138 | "type": "git",
139 | "url": "https://github.com/composer/ca-bundle.git",
140 | "reference": "69098eca243998b53eed7a48d82dedd28b447cd5"
141 | },
142 | "dist": {
143 | "type": "zip",
144 | "url": "https://api.github.com/repos/composer/ca-bundle/zipball/69098eca243998b53eed7a48d82dedd28b447cd5",
145 | "reference": "69098eca243998b53eed7a48d82dedd28b447cd5",
146 | "shasum": ""
147 | },
148 | "require": {
149 | "ext-openssl": "*",
150 | "ext-pcre": "*",
151 | "php": "^5.3.2 || ^7.0 || ^8.0"
152 | },
153 | "require-dev": {
154 | "phpstan/phpstan": "^0.12.55",
155 | "psr/log": "^1.0",
156 | "symfony/phpunit-bridge": "^4.2 || ^5",
157 | "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0"
158 | },
159 | "type": "library",
160 | "extra": {
161 | "branch-alias": {
162 | "dev-main": "1.x-dev"
163 | }
164 | },
165 | "autoload": {
166 | "psr-4": {
167 | "Composer\\CaBundle\\": "src"
168 | }
169 | },
170 | "notification-url": "https://packagist.org/downloads/",
171 | "license": [
172 | "MIT"
173 | ],
174 | "authors": [
175 | {
176 | "name": "Jordi Boggiano",
177 | "email": "j.boggiano@seld.be",
178 | "homepage": "http://seld.be"
179 | }
180 | ],
181 | "description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.",
182 | "keywords": [
183 | "cabundle",
184 | "cacert",
185 | "certificate",
186 | "ssl",
187 | "tls"
188 | ],
189 | "support": {
190 | "irc": "irc://irc.freenode.org/composer",
191 | "issues": "https://github.com/composer/ca-bundle/issues",
192 | "source": "https://github.com/composer/ca-bundle/tree/1.3.4"
193 | },
194 | "funding": [
195 | {
196 | "url": "https://packagist.com",
197 | "type": "custom"
198 | },
199 | {
200 | "url": "https://github.com/composer",
201 | "type": "github"
202 | },
203 | {
204 | "url": "https://tidelift.com/funding/github/packagist/composer/composer",
205 | "type": "tidelift"
206 | }
207 | ],
208 | "time": "2022-10-12T12:08:29+00:00"
209 | },
210 | {
211 | "name": "composer/class-map-generator",
212 | "version": "1.0.0",
213 | "source": {
214 | "type": "git",
215 | "url": "https://github.com/composer/class-map-generator.git",
216 | "reference": "1e1cb2b791facb2dfe32932a7718cf2571187513"
217 | },
218 | "dist": {
219 | "type": "zip",
220 | "url": "https://api.github.com/repos/composer/class-map-generator/zipball/1e1cb2b791facb2dfe32932a7718cf2571187513",
221 | "reference": "1e1cb2b791facb2dfe32932a7718cf2571187513",
222 | "shasum": ""
223 | },
224 | "require": {
225 | "composer/pcre": "^2 || ^3",
226 | "php": "^7.2 || ^8.0",
227 | "symfony/finder": "^4.4 || ^5.3 || ^6"
228 | },
229 | "require-dev": {
230 | "phpstan/phpstan": "^1.6",
231 | "phpstan/phpstan-deprecation-rules": "^1",
232 | "phpstan/phpstan-phpunit": "^1",
233 | "phpstan/phpstan-strict-rules": "^1.1",
234 | "symfony/filesystem": "^5.4 || ^6",
235 | "symfony/phpunit-bridge": "^5"
236 | },
237 | "type": "library",
238 | "extra": {
239 | "branch-alias": {
240 | "dev-main": "1.x-dev"
241 | }
242 | },
243 | "autoload": {
244 | "psr-4": {
245 | "Composer\\ClassMapGenerator\\": "src"
246 | }
247 | },
248 | "notification-url": "https://packagist.org/downloads/",
249 | "license": [
250 | "MIT"
251 | ],
252 | "authors": [
253 | {
254 | "name": "Jordi Boggiano",
255 | "email": "j.boggiano@seld.be",
256 | "homepage": "https://seld.be"
257 | }
258 | ],
259 | "description": "Utilities to scan PHP code and generate class maps.",
260 | "keywords": [
261 | "classmap"
262 | ],
263 | "support": {
264 | "issues": "https://github.com/composer/class-map-generator/issues",
265 | "source": "https://github.com/composer/class-map-generator/tree/1.0.0"
266 | },
267 | "funding": [
268 | {
269 | "url": "https://packagist.com",
270 | "type": "custom"
271 | },
272 | {
273 | "url": "https://github.com/composer",
274 | "type": "github"
275 | },
276 | {
277 | "url": "https://tidelift.com/funding/github/packagist/composer/composer",
278 | "type": "tidelift"
279 | }
280 | ],
281 | "time": "2022-06-19T11:31:27+00:00"
282 | },
283 | {
284 | "name": "composer/composer",
285 | "version": "2.5.1",
286 | "source": {
287 | "type": "git",
288 | "url": "https://github.com/composer/composer.git",
289 | "reference": "923278ad13e1621946eb76ab2882655d2cc396a4"
290 | },
291 | "dist": {
292 | "type": "zip",
293 | "url": "https://api.github.com/repos/composer/composer/zipball/923278ad13e1621946eb76ab2882655d2cc396a4",
294 | "reference": "923278ad13e1621946eb76ab2882655d2cc396a4",
295 | "shasum": ""
296 | },
297 | "require": {
298 | "composer/ca-bundle": "^1.0",
299 | "composer/class-map-generator": "^1.0",
300 | "composer/metadata-minifier": "^1.0",
301 | "composer/pcre": "^2.1 || ^3.1",
302 | "composer/semver": "^3.0",
303 | "composer/spdx-licenses": "^1.5.7",
304 | "composer/xdebug-handler": "^2.0.2 || ^3.0.3",
305 | "justinrainbow/json-schema": "^5.2.11",
306 | "php": "^7.2.5 || ^8.0",
307 | "psr/log": "^1.0 || ^2.0 || ^3.0",
308 | "react/promise": "^2.8",
309 | "seld/jsonlint": "^1.4",
310 | "seld/phar-utils": "^1.2",
311 | "seld/signal-handler": "^2.0",
312 | "symfony/console": "^5.4.11 || ^6.0.11",
313 | "symfony/filesystem": "^5.4 || ^6.0",
314 | "symfony/finder": "^5.4 || ^6.0",
315 | "symfony/polyfill-php73": "^1.24",
316 | "symfony/polyfill-php80": "^1.24",
317 | "symfony/polyfill-php81": "^1.24",
318 | "symfony/process": "^5.4 || ^6.0"
319 | },
320 | "require-dev": {
321 | "phpstan/phpstan": "^1.9.3",
322 | "phpstan/phpstan-deprecation-rules": "^1",
323 | "phpstan/phpstan-phpunit": "^1.0",
324 | "phpstan/phpstan-strict-rules": "^1",
325 | "phpstan/phpstan-symfony": "^1.2.10",
326 | "symfony/phpunit-bridge": "^6.0"
327 | },
328 | "suggest": {
329 | "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages",
330 | "ext-zip": "Enabling the zip extension allows you to unzip archives",
331 | "ext-zlib": "Allow gzip compression of HTTP requests"
332 | },
333 | "bin": [
334 | "bin/composer"
335 | ],
336 | "type": "library",
337 | "extra": {
338 | "branch-alias": {
339 | "dev-main": "2.5-dev"
340 | },
341 | "phpstan": {
342 | "includes": [
343 | "phpstan/rules.neon"
344 | ]
345 | }
346 | },
347 | "autoload": {
348 | "psr-4": {
349 | "Composer\\": "src/Composer"
350 | }
351 | },
352 | "notification-url": "https://packagist.org/downloads/",
353 | "license": [
354 | "MIT"
355 | ],
356 | "authors": [
357 | {
358 | "name": "Nils Adermann",
359 | "email": "naderman@naderman.de",
360 | "homepage": "https://www.naderman.de"
361 | },
362 | {
363 | "name": "Jordi Boggiano",
364 | "email": "j.boggiano@seld.be",
365 | "homepage": "https://seld.be"
366 | }
367 | ],
368 | "description": "Composer helps you declare, manage and install dependencies of PHP projects. It ensures you have the right stack everywhere.",
369 | "homepage": "https://getcomposer.org/",
370 | "keywords": [
371 | "autoload",
372 | "dependency",
373 | "package"
374 | ],
375 | "support": {
376 | "irc": "ircs://irc.libera.chat:6697/composer",
377 | "issues": "https://github.com/composer/composer/issues",
378 | "source": "https://github.com/composer/composer/tree/2.5.1"
379 | },
380 | "funding": [
381 | {
382 | "url": "https://packagist.com",
383 | "type": "custom"
384 | },
385 | {
386 | "url": "https://github.com/composer",
387 | "type": "github"
388 | },
389 | {
390 | "url": "https://tidelift.com/funding/github/packagist/composer/composer",
391 | "type": "tidelift"
392 | }
393 | ],
394 | "time": "2022-12-22T14:33:54+00:00"
395 | },
396 | {
397 | "name": "composer/metadata-minifier",
398 | "version": "1.0.0",
399 | "source": {
400 | "type": "git",
401 | "url": "https://github.com/composer/metadata-minifier.git",
402 | "reference": "c549d23829536f0d0e984aaabbf02af91f443207"
403 | },
404 | "dist": {
405 | "type": "zip",
406 | "url": "https://api.github.com/repos/composer/metadata-minifier/zipball/c549d23829536f0d0e984aaabbf02af91f443207",
407 | "reference": "c549d23829536f0d0e984aaabbf02af91f443207",
408 | "shasum": ""
409 | },
410 | "require": {
411 | "php": "^5.3.2 || ^7.0 || ^8.0"
412 | },
413 | "require-dev": {
414 | "composer/composer": "^2",
415 | "phpstan/phpstan": "^0.12.55",
416 | "symfony/phpunit-bridge": "^4.2 || ^5"
417 | },
418 | "type": "library",
419 | "extra": {
420 | "branch-alias": {
421 | "dev-main": "1.x-dev"
422 | }
423 | },
424 | "autoload": {
425 | "psr-4": {
426 | "Composer\\MetadataMinifier\\": "src"
427 | }
428 | },
429 | "notification-url": "https://packagist.org/downloads/",
430 | "license": [
431 | "MIT"
432 | ],
433 | "authors": [
434 | {
435 | "name": "Jordi Boggiano",
436 | "email": "j.boggiano@seld.be",
437 | "homepage": "http://seld.be"
438 | }
439 | ],
440 | "description": "Small utility library that handles metadata minification and expansion.",
441 | "keywords": [
442 | "composer",
443 | "compression"
444 | ],
445 | "support": {
446 | "issues": "https://github.com/composer/metadata-minifier/issues",
447 | "source": "https://github.com/composer/metadata-minifier/tree/1.0.0"
448 | },
449 | "funding": [
450 | {
451 | "url": "https://packagist.com",
452 | "type": "custom"
453 | },
454 | {
455 | "url": "https://github.com/composer",
456 | "type": "github"
457 | },
458 | {
459 | "url": "https://tidelift.com/funding/github/packagist/composer/composer",
460 | "type": "tidelift"
461 | }
462 | ],
463 | "time": "2021-04-07T13:37:33+00:00"
464 | },
465 | {
466 | "name": "composer/pcre",
467 | "version": "3.1.0",
468 | "source": {
469 | "type": "git",
470 | "url": "https://github.com/composer/pcre.git",
471 | "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2"
472 | },
473 | "dist": {
474 | "type": "zip",
475 | "url": "https://api.github.com/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2",
476 | "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2",
477 | "shasum": ""
478 | },
479 | "require": {
480 | "php": "^7.4 || ^8.0"
481 | },
482 | "require-dev": {
483 | "phpstan/phpstan": "^1.3",
484 | "phpstan/phpstan-strict-rules": "^1.1",
485 | "symfony/phpunit-bridge": "^5"
486 | },
487 | "type": "library",
488 | "extra": {
489 | "branch-alias": {
490 | "dev-main": "3.x-dev"
491 | }
492 | },
493 | "autoload": {
494 | "psr-4": {
495 | "Composer\\Pcre\\": "src"
496 | }
497 | },
498 | "notification-url": "https://packagist.org/downloads/",
499 | "license": [
500 | "MIT"
501 | ],
502 | "authors": [
503 | {
504 | "name": "Jordi Boggiano",
505 | "email": "j.boggiano@seld.be",
506 | "homepage": "http://seld.be"
507 | }
508 | ],
509 | "description": "PCRE wrapping library that offers type-safe preg_* replacements.",
510 | "keywords": [
511 | "PCRE",
512 | "preg",
513 | "regex",
514 | "regular expression"
515 | ],
516 | "support": {
517 | "issues": "https://github.com/composer/pcre/issues",
518 | "source": "https://github.com/composer/pcre/tree/3.1.0"
519 | },
520 | "funding": [
521 | {
522 | "url": "https://packagist.com",
523 | "type": "custom"
524 | },
525 | {
526 | "url": "https://github.com/composer",
527 | "type": "github"
528 | },
529 | {
530 | "url": "https://tidelift.com/funding/github/packagist/composer/composer",
531 | "type": "tidelift"
532 | }
533 | ],
534 | "time": "2022-11-17T09:50:14+00:00"
535 | },
536 | {
537 | "name": "composer/semver",
538 | "version": "3.3.2",
539 | "source": {
540 | "type": "git",
541 | "url": "https://github.com/composer/semver.git",
542 | "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9"
543 | },
544 | "dist": {
545 | "type": "zip",
546 | "url": "https://api.github.com/repos/composer/semver/zipball/3953f23262f2bff1919fc82183ad9acb13ff62c9",
547 | "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9",
548 | "shasum": ""
549 | },
550 | "require": {
551 | "php": "^5.3.2 || ^7.0 || ^8.0"
552 | },
553 | "require-dev": {
554 | "phpstan/phpstan": "^1.4",
555 | "symfony/phpunit-bridge": "^4.2 || ^5"
556 | },
557 | "type": "library",
558 | "extra": {
559 | "branch-alias": {
560 | "dev-main": "3.x-dev"
561 | }
562 | },
563 | "autoload": {
564 | "psr-4": {
565 | "Composer\\Semver\\": "src"
566 | }
567 | },
568 | "notification-url": "https://packagist.org/downloads/",
569 | "license": [
570 | "MIT"
571 | ],
572 | "authors": [
573 | {
574 | "name": "Nils Adermann",
575 | "email": "naderman@naderman.de",
576 | "homepage": "http://www.naderman.de"
577 | },
578 | {
579 | "name": "Jordi Boggiano",
580 | "email": "j.boggiano@seld.be",
581 | "homepage": "http://seld.be"
582 | },
583 | {
584 | "name": "Rob Bast",
585 | "email": "rob.bast@gmail.com",
586 | "homepage": "http://robbast.nl"
587 | }
588 | ],
589 | "description": "Semver library that offers utilities, version constraint parsing and validation.",
590 | "keywords": [
591 | "semantic",
592 | "semver",
593 | "validation",
594 | "versioning"
595 | ],
596 | "support": {
597 | "irc": "irc://irc.freenode.org/composer",
598 | "issues": "https://github.com/composer/semver/issues",
599 | "source": "https://github.com/composer/semver/tree/3.3.2"
600 | },
601 | "funding": [
602 | {
603 | "url": "https://packagist.com",
604 | "type": "custom"
605 | },
606 | {
607 | "url": "https://github.com/composer",
608 | "type": "github"
609 | },
610 | {
611 | "url": "https://tidelift.com/funding/github/packagist/composer/composer",
612 | "type": "tidelift"
613 | }
614 | ],
615 | "time": "2022-04-01T19:23:25+00:00"
616 | },
617 | {
618 | "name": "composer/spdx-licenses",
619 | "version": "1.5.7",
620 | "source": {
621 | "type": "git",
622 | "url": "https://github.com/composer/spdx-licenses.git",
623 | "reference": "c848241796da2abf65837d51dce1fae55a960149"
624 | },
625 | "dist": {
626 | "type": "zip",
627 | "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/c848241796da2abf65837d51dce1fae55a960149",
628 | "reference": "c848241796da2abf65837d51dce1fae55a960149",
629 | "shasum": ""
630 | },
631 | "require": {
632 | "php": "^5.3.2 || ^7.0 || ^8.0"
633 | },
634 | "require-dev": {
635 | "phpstan/phpstan": "^0.12.55",
636 | "symfony/phpunit-bridge": "^4.2 || ^5"
637 | },
638 | "type": "library",
639 | "extra": {
640 | "branch-alias": {
641 | "dev-main": "1.x-dev"
642 | }
643 | },
644 | "autoload": {
645 | "psr-4": {
646 | "Composer\\Spdx\\": "src"
647 | }
648 | },
649 | "notification-url": "https://packagist.org/downloads/",
650 | "license": [
651 | "MIT"
652 | ],
653 | "authors": [
654 | {
655 | "name": "Nils Adermann",
656 | "email": "naderman@naderman.de",
657 | "homepage": "http://www.naderman.de"
658 | },
659 | {
660 | "name": "Jordi Boggiano",
661 | "email": "j.boggiano@seld.be",
662 | "homepage": "http://seld.be"
663 | },
664 | {
665 | "name": "Rob Bast",
666 | "email": "rob.bast@gmail.com",
667 | "homepage": "http://robbast.nl"
668 | }
669 | ],
670 | "description": "SPDX licenses list and validation library.",
671 | "keywords": [
672 | "license",
673 | "spdx",
674 | "validator"
675 | ],
676 | "support": {
677 | "irc": "irc://irc.freenode.org/composer",
678 | "issues": "https://github.com/composer/spdx-licenses/issues",
679 | "source": "https://github.com/composer/spdx-licenses/tree/1.5.7"
680 | },
681 | "funding": [
682 | {
683 | "url": "https://packagist.com",
684 | "type": "custom"
685 | },
686 | {
687 | "url": "https://github.com/composer",
688 | "type": "github"
689 | },
690 | {
691 | "url": "https://tidelift.com/funding/github/packagist/composer/composer",
692 | "type": "tidelift"
693 | }
694 | ],
695 | "time": "2022-05-23T07:37:50+00:00"
696 | },
697 | {
698 | "name": "composer/xdebug-handler",
699 | "version": "3.0.3",
700 | "source": {
701 | "type": "git",
702 | "url": "https://github.com/composer/xdebug-handler.git",
703 | "reference": "ced299686f41dce890debac69273b47ffe98a40c"
704 | },
705 | "dist": {
706 | "type": "zip",
707 | "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ced299686f41dce890debac69273b47ffe98a40c",
708 | "reference": "ced299686f41dce890debac69273b47ffe98a40c",
709 | "shasum": ""
710 | },
711 | "require": {
712 | "composer/pcre": "^1 || ^2 || ^3",
713 | "php": "^7.2.5 || ^8.0",
714 | "psr/log": "^1 || ^2 || ^3"
715 | },
716 | "require-dev": {
717 | "phpstan/phpstan": "^1.0",
718 | "phpstan/phpstan-strict-rules": "^1.1",
719 | "symfony/phpunit-bridge": "^6.0"
720 | },
721 | "type": "library",
722 | "autoload": {
723 | "psr-4": {
724 | "Composer\\XdebugHandler\\": "src"
725 | }
726 | },
727 | "notification-url": "https://packagist.org/downloads/",
728 | "license": [
729 | "MIT"
730 | ],
731 | "authors": [
732 | {
733 | "name": "John Stevenson",
734 | "email": "john-stevenson@blueyonder.co.uk"
735 | }
736 | ],
737 | "description": "Restarts a process without Xdebug.",
738 | "keywords": [
739 | "Xdebug",
740 | "performance"
741 | ],
742 | "support": {
743 | "irc": "irc://irc.freenode.org/composer",
744 | "issues": "https://github.com/composer/xdebug-handler/issues",
745 | "source": "https://github.com/composer/xdebug-handler/tree/3.0.3"
746 | },
747 | "funding": [
748 | {
749 | "url": "https://packagist.com",
750 | "type": "custom"
751 | },
752 | {
753 | "url": "https://github.com/composer",
754 | "type": "github"
755 | },
756 | {
757 | "url": "https://tidelift.com/funding/github/packagist/composer/composer",
758 | "type": "tidelift"
759 | }
760 | ],
761 | "time": "2022-02-25T21:32:43+00:00"
762 | },
763 | {
764 | "name": "doctrine/annotations",
765 | "version": "1.14.2",
766 | "source": {
767 | "type": "git",
768 | "url": "https://github.com/doctrine/annotations.git",
769 | "reference": "ad785217c1e9555a7d6c6c8c9f406395a5e2882b"
770 | },
771 | "dist": {
772 | "type": "zip",
773 | "url": "https://api.github.com/repos/doctrine/annotations/zipball/ad785217c1e9555a7d6c6c8c9f406395a5e2882b",
774 | "reference": "ad785217c1e9555a7d6c6c8c9f406395a5e2882b",
775 | "shasum": ""
776 | },
777 | "require": {
778 | "doctrine/lexer": "^1 || ^2",
779 | "ext-tokenizer": "*",
780 | "php": "^7.1 || ^8.0",
781 | "psr/cache": "^1 || ^2 || ^3"
782 | },
783 | "require-dev": {
784 | "doctrine/cache": "^1.11 || ^2.0",
785 | "doctrine/coding-standard": "^9 || ^10",
786 | "phpstan/phpstan": "~1.4.10 || ^1.8.0",
787 | "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
788 | "symfony/cache": "^4.4 || ^5.4 || ^6",
789 | "vimeo/psalm": "^4.10"
790 | },
791 | "suggest": {
792 | "php": "PHP 8.0 or higher comes with attributes, a native replacement for annotations"
793 | },
794 | "type": "library",
795 | "autoload": {
796 | "psr-4": {
797 | "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations"
798 | }
799 | },
800 | "notification-url": "https://packagist.org/downloads/",
801 | "license": [
802 | "MIT"
803 | ],
804 | "authors": [
805 | {
806 | "name": "Guilherme Blanco",
807 | "email": "guilhermeblanco@gmail.com"
808 | },
809 | {
810 | "name": "Roman Borschel",
811 | "email": "roman@code-factory.org"
812 | },
813 | {
814 | "name": "Benjamin Eberlei",
815 | "email": "kontakt@beberlei.de"
816 | },
817 | {
818 | "name": "Jonathan Wage",
819 | "email": "jonwage@gmail.com"
820 | },
821 | {
822 | "name": "Johannes Schmitt",
823 | "email": "schmittjoh@gmail.com"
824 | }
825 | ],
826 | "description": "Docblock Annotations Parser",
827 | "homepage": "https://www.doctrine-project.org/projects/annotations.html",
828 | "keywords": [
829 | "annotations",
830 | "docblock",
831 | "parser"
832 | ],
833 | "support": {
834 | "issues": "https://github.com/doctrine/annotations/issues",
835 | "source": "https://github.com/doctrine/annotations/tree/1.14.2"
836 | },
837 | "time": "2022-12-15T06:48:22+00:00"
838 | },
839 | {
840 | "name": "doctrine/deprecations",
841 | "version": "v1.0.0",
842 | "source": {
843 | "type": "git",
844 | "url": "https://github.com/doctrine/deprecations.git",
845 | "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de"
846 | },
847 | "dist": {
848 | "type": "zip",
849 | "url": "https://api.github.com/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de",
850 | "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de",
851 | "shasum": ""
852 | },
853 | "require": {
854 | "php": "^7.1|^8.0"
855 | },
856 | "require-dev": {
857 | "doctrine/coding-standard": "^9",
858 | "phpunit/phpunit": "^7.5|^8.5|^9.5",
859 | "psr/log": "^1|^2|^3"
860 | },
861 | "suggest": {
862 | "psr/log": "Allows logging deprecations via PSR-3 logger implementation"
863 | },
864 | "type": "library",
865 | "autoload": {
866 | "psr-4": {
867 | "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations"
868 | }
869 | },
870 | "notification-url": "https://packagist.org/downloads/",
871 | "license": [
872 | "MIT"
873 | ],
874 | "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.",
875 | "homepage": "https://www.doctrine-project.org/",
876 | "support": {
877 | "issues": "https://github.com/doctrine/deprecations/issues",
878 | "source": "https://github.com/doctrine/deprecations/tree/v1.0.0"
879 | },
880 | "time": "2022-05-02T15:47:09+00:00"
881 | },
882 | {
883 | "name": "doctrine/lexer",
884 | "version": "2.1.0",
885 | "source": {
886 | "type": "git",
887 | "url": "https://github.com/doctrine/lexer.git",
888 | "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124"
889 | },
890 | "dist": {
891 | "type": "zip",
892 | "url": "https://api.github.com/repos/doctrine/lexer/zipball/39ab8fcf5a51ce4b85ca97c7a7d033eb12831124",
893 | "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124",
894 | "shasum": ""
895 | },
896 | "require": {
897 | "doctrine/deprecations": "^1.0",
898 | "php": "^7.1 || ^8.0"
899 | },
900 | "require-dev": {
901 | "doctrine/coding-standard": "^9 || ^10",
902 | "phpstan/phpstan": "^1.3",
903 | "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
904 | "psalm/plugin-phpunit": "^0.18.3",
905 | "vimeo/psalm": "^4.11 || ^5.0"
906 | },
907 | "type": "library",
908 | "autoload": {
909 | "psr-4": {
910 | "Doctrine\\Common\\Lexer\\": "src"
911 | }
912 | },
913 | "notification-url": "https://packagist.org/downloads/",
914 | "license": [
915 | "MIT"
916 | ],
917 | "authors": [
918 | {
919 | "name": "Guilherme Blanco",
920 | "email": "guilhermeblanco@gmail.com"
921 | },
922 | {
923 | "name": "Roman Borschel",
924 | "email": "roman@code-factory.org"
925 | },
926 | {
927 | "name": "Johannes Schmitt",
928 | "email": "schmittjoh@gmail.com"
929 | }
930 | ],
931 | "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.",
932 | "homepage": "https://www.doctrine-project.org/projects/lexer.html",
933 | "keywords": [
934 | "annotations",
935 | "docblock",
936 | "lexer",
937 | "parser",
938 | "php"
939 | ],
940 | "support": {
941 | "issues": "https://github.com/doctrine/lexer/issues",
942 | "source": "https://github.com/doctrine/lexer/tree/2.1.0"
943 | },
944 | "funding": [
945 | {
946 | "url": "https://www.doctrine-project.org/sponsorship.html",
947 | "type": "custom"
948 | },
949 | {
950 | "url": "https://www.patreon.com/phpdoctrine",
951 | "type": "patreon"
952 | },
953 | {
954 | "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer",
955 | "type": "tidelift"
956 | }
957 | ],
958 | "time": "2022-12-14T08:49:07+00:00"
959 | },
960 | {
961 | "name": "friendsofphp/php-cs-fixer",
962 | "version": "v3.13.2",
963 | "source": {
964 | "type": "git",
965 | "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
966 | "reference": "3952f08a81bd3b1b15e11c3de0b6bf037faa8496"
967 | },
968 | "dist": {
969 | "type": "zip",
970 | "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/3952f08a81bd3b1b15e11c3de0b6bf037faa8496",
971 | "reference": "3952f08a81bd3b1b15e11c3de0b6bf037faa8496",
972 | "shasum": ""
973 | },
974 | "require": {
975 | "composer/semver": "^3.2",
976 | "composer/xdebug-handler": "^3.0.3",
977 | "doctrine/annotations": "^1.13",
978 | "ext-json": "*",
979 | "ext-tokenizer": "*",
980 | "php": "^7.4 || ^8.0",
981 | "sebastian/diff": "^4.0",
982 | "symfony/console": "^5.4 || ^6.0",
983 | "symfony/event-dispatcher": "^5.4 || ^6.0",
984 | "symfony/filesystem": "^5.4 || ^6.0",
985 | "symfony/finder": "^5.4 || ^6.0",
986 | "symfony/options-resolver": "^5.4 || ^6.0",
987 | "symfony/polyfill-mbstring": "^1.23",
988 | "symfony/polyfill-php80": "^1.25",
989 | "symfony/polyfill-php81": "^1.25",
990 | "symfony/process": "^5.4 || ^6.0",
991 | "symfony/stopwatch": "^5.4 || ^6.0"
992 | },
993 | "require-dev": {
994 | "justinrainbow/json-schema": "^5.2",
995 | "keradus/cli-executor": "^2.0",
996 | "mikey179/vfsstream": "^1.6.10",
997 | "php-coveralls/php-coveralls": "^2.5.2",
998 | "php-cs-fixer/accessible-object": "^1.1",
999 | "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2",
1000 | "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1",
1001 | "phpspec/prophecy": "^1.15",
1002 | "phpspec/prophecy-phpunit": "^2.0",
1003 | "phpunit/phpunit": "^9.5",
1004 | "phpunitgoodpractices/polyfill": "^1.6",
1005 | "phpunitgoodpractices/traits": "^1.9.2",
1006 | "symfony/phpunit-bridge": "^6.0",
1007 | "symfony/yaml": "^5.4 || ^6.0"
1008 | },
1009 | "suggest": {
1010 | "ext-dom": "For handling output formats in XML",
1011 | "ext-mbstring": "For handling non-UTF8 characters."
1012 | },
1013 | "bin": [
1014 | "php-cs-fixer"
1015 | ],
1016 | "type": "application",
1017 | "autoload": {
1018 | "psr-4": {
1019 | "PhpCsFixer\\": "src/"
1020 | }
1021 | },
1022 | "notification-url": "https://packagist.org/downloads/",
1023 | "license": [
1024 | "MIT"
1025 | ],
1026 | "authors": [
1027 | {
1028 | "name": "Fabien Potencier",
1029 | "email": "fabien@symfony.com"
1030 | },
1031 | {
1032 | "name": "Dariusz Rumiński",
1033 | "email": "dariusz.ruminski@gmail.com"
1034 | }
1035 | ],
1036 | "description": "A tool to automatically fix PHP code style",
1037 | "support": {
1038 | "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
1039 | "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.13.2"
1040 | },
1041 | "funding": [
1042 | {
1043 | "url": "https://github.com/keradus",
1044 | "type": "github"
1045 | }
1046 | ],
1047 | "time": "2023-01-02T23:53:50+00:00"
1048 | },
1049 | {
1050 | "name": "justinrainbow/json-schema",
1051 | "version": "5.2.12",
1052 | "source": {
1053 | "type": "git",
1054 | "url": "https://github.com/justinrainbow/json-schema.git",
1055 | "reference": "ad87d5a5ca981228e0e205c2bc7dfb8e24559b60"
1056 | },
1057 | "dist": {
1058 | "type": "zip",
1059 | "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/ad87d5a5ca981228e0e205c2bc7dfb8e24559b60",
1060 | "reference": "ad87d5a5ca981228e0e205c2bc7dfb8e24559b60",
1061 | "shasum": ""
1062 | },
1063 | "require": {
1064 | "php": ">=5.3.3"
1065 | },
1066 | "require-dev": {
1067 | "friendsofphp/php-cs-fixer": "~2.2.20||~2.15.1",
1068 | "json-schema/json-schema-test-suite": "1.2.0",
1069 | "phpunit/phpunit": "^4.8.35"
1070 | },
1071 | "bin": [
1072 | "bin/validate-json"
1073 | ],
1074 | "type": "library",
1075 | "extra": {
1076 | "branch-alias": {
1077 | "dev-master": "5.0.x-dev"
1078 | }
1079 | },
1080 | "autoload": {
1081 | "psr-4": {
1082 | "JsonSchema\\": "src/JsonSchema/"
1083 | }
1084 | },
1085 | "notification-url": "https://packagist.org/downloads/",
1086 | "license": [
1087 | "MIT"
1088 | ],
1089 | "authors": [
1090 | {
1091 | "name": "Bruno Prieto Reis",
1092 | "email": "bruno.p.reis@gmail.com"
1093 | },
1094 | {
1095 | "name": "Justin Rainbow",
1096 | "email": "justin.rainbow@gmail.com"
1097 | },
1098 | {
1099 | "name": "Igor Wiedler",
1100 | "email": "igor@wiedler.ch"
1101 | },
1102 | {
1103 | "name": "Robert Schönthal",
1104 | "email": "seroscho@googlemail.com"
1105 | }
1106 | ],
1107 | "description": "A library to validate a json schema.",
1108 | "homepage": "https://github.com/justinrainbow/json-schema",
1109 | "keywords": [
1110 | "json",
1111 | "schema"
1112 | ],
1113 | "support": {
1114 | "issues": "https://github.com/justinrainbow/json-schema/issues",
1115 | "source": "https://github.com/justinrainbow/json-schema/tree/5.2.12"
1116 | },
1117 | "time": "2022-04-13T08:02:27+00:00"
1118 | },
1119 | {
1120 | "name": "psr/cache",
1121 | "version": "3.0.0",
1122 | "source": {
1123 | "type": "git",
1124 | "url": "https://github.com/php-fig/cache.git",
1125 | "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf"
1126 | },
1127 | "dist": {
1128 | "type": "zip",
1129 | "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf",
1130 | "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf",
1131 | "shasum": ""
1132 | },
1133 | "require": {
1134 | "php": ">=8.0.0"
1135 | },
1136 | "type": "library",
1137 | "extra": {
1138 | "branch-alias": {
1139 | "dev-master": "1.0.x-dev"
1140 | }
1141 | },
1142 | "autoload": {
1143 | "psr-4": {
1144 | "Psr\\Cache\\": "src/"
1145 | }
1146 | },
1147 | "notification-url": "https://packagist.org/downloads/",
1148 | "license": [
1149 | "MIT"
1150 | ],
1151 | "authors": [
1152 | {
1153 | "name": "PHP-FIG",
1154 | "homepage": "https://www.php-fig.org/"
1155 | }
1156 | ],
1157 | "description": "Common interface for caching libraries",
1158 | "keywords": [
1159 | "cache",
1160 | "psr",
1161 | "psr-6"
1162 | ],
1163 | "support": {
1164 | "source": "https://github.com/php-fig/cache/tree/3.0.0"
1165 | },
1166 | "time": "2021-02-03T23:26:27+00:00"
1167 | },
1168 | {
1169 | "name": "psr/container",
1170 | "version": "2.0.2",
1171 | "source": {
1172 | "type": "git",
1173 | "url": "https://github.com/php-fig/container.git",
1174 | "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963"
1175 | },
1176 | "dist": {
1177 | "type": "zip",
1178 | "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963",
1179 | "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963",
1180 | "shasum": ""
1181 | },
1182 | "require": {
1183 | "php": ">=7.4.0"
1184 | },
1185 | "type": "library",
1186 | "extra": {
1187 | "branch-alias": {
1188 | "dev-master": "2.0.x-dev"
1189 | }
1190 | },
1191 | "autoload": {
1192 | "psr-4": {
1193 | "Psr\\Container\\": "src/"
1194 | }
1195 | },
1196 | "notification-url": "https://packagist.org/downloads/",
1197 | "license": [
1198 | "MIT"
1199 | ],
1200 | "authors": [
1201 | {
1202 | "name": "PHP-FIG",
1203 | "homepage": "https://www.php-fig.org/"
1204 | }
1205 | ],
1206 | "description": "Common Container Interface (PHP FIG PSR-11)",
1207 | "homepage": "https://github.com/php-fig/container",
1208 | "keywords": [
1209 | "PSR-11",
1210 | "container",
1211 | "container-interface",
1212 | "container-interop",
1213 | "psr"
1214 | ],
1215 | "support": {
1216 | "issues": "https://github.com/php-fig/container/issues",
1217 | "source": "https://github.com/php-fig/container/tree/2.0.2"
1218 | },
1219 | "time": "2021-11-05T16:47:00+00:00"
1220 | },
1221 | {
1222 | "name": "psr/event-dispatcher",
1223 | "version": "1.0.0",
1224 | "source": {
1225 | "type": "git",
1226 | "url": "https://github.com/php-fig/event-dispatcher.git",
1227 | "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0"
1228 | },
1229 | "dist": {
1230 | "type": "zip",
1231 | "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0",
1232 | "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0",
1233 | "shasum": ""
1234 | },
1235 | "require": {
1236 | "php": ">=7.2.0"
1237 | },
1238 | "type": "library",
1239 | "extra": {
1240 | "branch-alias": {
1241 | "dev-master": "1.0.x-dev"
1242 | }
1243 | },
1244 | "autoload": {
1245 | "psr-4": {
1246 | "Psr\\EventDispatcher\\": "src/"
1247 | }
1248 | },
1249 | "notification-url": "https://packagist.org/downloads/",
1250 | "license": [
1251 | "MIT"
1252 | ],
1253 | "authors": [
1254 | {
1255 | "name": "PHP-FIG",
1256 | "homepage": "http://www.php-fig.org/"
1257 | }
1258 | ],
1259 | "description": "Standard interfaces for event handling.",
1260 | "keywords": [
1261 | "events",
1262 | "psr",
1263 | "psr-14"
1264 | ],
1265 | "support": {
1266 | "issues": "https://github.com/php-fig/event-dispatcher/issues",
1267 | "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0"
1268 | },
1269 | "time": "2019-01-08T18:20:26+00:00"
1270 | },
1271 | {
1272 | "name": "psr/log",
1273 | "version": "3.0.0",
1274 | "source": {
1275 | "type": "git",
1276 | "url": "https://github.com/php-fig/log.git",
1277 | "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001"
1278 | },
1279 | "dist": {
1280 | "type": "zip",
1281 | "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001",
1282 | "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001",
1283 | "shasum": ""
1284 | },
1285 | "require": {
1286 | "php": ">=8.0.0"
1287 | },
1288 | "type": "library",
1289 | "extra": {
1290 | "branch-alias": {
1291 | "dev-master": "3.x-dev"
1292 | }
1293 | },
1294 | "autoload": {
1295 | "psr-4": {
1296 | "Psr\\Log\\": "src"
1297 | }
1298 | },
1299 | "notification-url": "https://packagist.org/downloads/",
1300 | "license": [
1301 | "MIT"
1302 | ],
1303 | "authors": [
1304 | {
1305 | "name": "PHP-FIG",
1306 | "homepage": "https://www.php-fig.org/"
1307 | }
1308 | ],
1309 | "description": "Common interface for logging libraries",
1310 | "homepage": "https://github.com/php-fig/log",
1311 | "keywords": [
1312 | "log",
1313 | "psr",
1314 | "psr-3"
1315 | ],
1316 | "support": {
1317 | "source": "https://github.com/php-fig/log/tree/3.0.0"
1318 | },
1319 | "time": "2021-07-14T16:46:02+00:00"
1320 | },
1321 | {
1322 | "name": "react/promise",
1323 | "version": "v2.9.0",
1324 | "source": {
1325 | "type": "git",
1326 | "url": "https://github.com/reactphp/promise.git",
1327 | "reference": "234f8fd1023c9158e2314fa9d7d0e6a83db42910"
1328 | },
1329 | "dist": {
1330 | "type": "zip",
1331 | "url": "https://api.github.com/repos/reactphp/promise/zipball/234f8fd1023c9158e2314fa9d7d0e6a83db42910",
1332 | "reference": "234f8fd1023c9158e2314fa9d7d0e6a83db42910",
1333 | "shasum": ""
1334 | },
1335 | "require": {
1336 | "php": ">=5.4.0"
1337 | },
1338 | "require-dev": {
1339 | "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.36"
1340 | },
1341 | "type": "library",
1342 | "autoload": {
1343 | "files": [
1344 | "src/functions_include.php"
1345 | ],
1346 | "psr-4": {
1347 | "React\\Promise\\": "src/"
1348 | }
1349 | },
1350 | "notification-url": "https://packagist.org/downloads/",
1351 | "license": [
1352 | "MIT"
1353 | ],
1354 | "authors": [
1355 | {
1356 | "name": "Jan Sorgalla",
1357 | "email": "jsorgalla@gmail.com",
1358 | "homepage": "https://sorgalla.com/"
1359 | },
1360 | {
1361 | "name": "Christian Lück",
1362 | "email": "christian@clue.engineering",
1363 | "homepage": "https://clue.engineering/"
1364 | },
1365 | {
1366 | "name": "Cees-Jan Kiewiet",
1367 | "email": "reactphp@ceesjankiewiet.nl",
1368 | "homepage": "https://wyrihaximus.net/"
1369 | },
1370 | {
1371 | "name": "Chris Boden",
1372 | "email": "cboden@gmail.com",
1373 | "homepage": "https://cboden.dev/"
1374 | }
1375 | ],
1376 | "description": "A lightweight implementation of CommonJS Promises/A for PHP",
1377 | "keywords": [
1378 | "promise",
1379 | "promises"
1380 | ],
1381 | "support": {
1382 | "issues": "https://github.com/reactphp/promise/issues",
1383 | "source": "https://github.com/reactphp/promise/tree/v2.9.0"
1384 | },
1385 | "funding": [
1386 | {
1387 | "url": "https://github.com/WyriHaximus",
1388 | "type": "github"
1389 | },
1390 | {
1391 | "url": "https://github.com/clue",
1392 | "type": "github"
1393 | }
1394 | ],
1395 | "time": "2022-02-11T10:27:51+00:00"
1396 | },
1397 | {
1398 | "name": "sebastian/diff",
1399 | "version": "4.0.4",
1400 | "source": {
1401 | "type": "git",
1402 | "url": "https://github.com/sebastianbergmann/diff.git",
1403 | "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d"
1404 | },
1405 | "dist": {
1406 | "type": "zip",
1407 | "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d",
1408 | "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d",
1409 | "shasum": ""
1410 | },
1411 | "require": {
1412 | "php": ">=7.3"
1413 | },
1414 | "require-dev": {
1415 | "phpunit/phpunit": "^9.3",
1416 | "symfony/process": "^4.2 || ^5"
1417 | },
1418 | "type": "library",
1419 | "extra": {
1420 | "branch-alias": {
1421 | "dev-master": "4.0-dev"
1422 | }
1423 | },
1424 | "autoload": {
1425 | "classmap": [
1426 | "src/"
1427 | ]
1428 | },
1429 | "notification-url": "https://packagist.org/downloads/",
1430 | "license": [
1431 | "BSD-3-Clause"
1432 | ],
1433 | "authors": [
1434 | {
1435 | "name": "Sebastian Bergmann",
1436 | "email": "sebastian@phpunit.de"
1437 | },
1438 | {
1439 | "name": "Kore Nordmann",
1440 | "email": "mail@kore-nordmann.de"
1441 | }
1442 | ],
1443 | "description": "Diff implementation",
1444 | "homepage": "https://github.com/sebastianbergmann/diff",
1445 | "keywords": [
1446 | "diff",
1447 | "udiff",
1448 | "unidiff",
1449 | "unified diff"
1450 | ],
1451 | "support": {
1452 | "issues": "https://github.com/sebastianbergmann/diff/issues",
1453 | "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4"
1454 | },
1455 | "funding": [
1456 | {
1457 | "url": "https://github.com/sebastianbergmann",
1458 | "type": "github"
1459 | }
1460 | ],
1461 | "time": "2020-10-26T13:10:38+00:00"
1462 | },
1463 | {
1464 | "name": "seld/jsonlint",
1465 | "version": "1.9.0",
1466 | "source": {
1467 | "type": "git",
1468 | "url": "https://github.com/Seldaek/jsonlint.git",
1469 | "reference": "4211420d25eba80712bff236a98960ef68b866b7"
1470 | },
1471 | "dist": {
1472 | "type": "zip",
1473 | "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/4211420d25eba80712bff236a98960ef68b866b7",
1474 | "reference": "4211420d25eba80712bff236a98960ef68b866b7",
1475 | "shasum": ""
1476 | },
1477 | "require": {
1478 | "php": "^5.3 || ^7.0 || ^8.0"
1479 | },
1480 | "require-dev": {
1481 | "phpstan/phpstan": "^1.5",
1482 | "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^8.5.13"
1483 | },
1484 | "bin": [
1485 | "bin/jsonlint"
1486 | ],
1487 | "type": "library",
1488 | "autoload": {
1489 | "psr-4": {
1490 | "Seld\\JsonLint\\": "src/Seld/JsonLint/"
1491 | }
1492 | },
1493 | "notification-url": "https://packagist.org/downloads/",
1494 | "license": [
1495 | "MIT"
1496 | ],
1497 | "authors": [
1498 | {
1499 | "name": "Jordi Boggiano",
1500 | "email": "j.boggiano@seld.be",
1501 | "homepage": "http://seld.be"
1502 | }
1503 | ],
1504 | "description": "JSON Linter",
1505 | "keywords": [
1506 | "json",
1507 | "linter",
1508 | "parser",
1509 | "validator"
1510 | ],
1511 | "support": {
1512 | "issues": "https://github.com/Seldaek/jsonlint/issues",
1513 | "source": "https://github.com/Seldaek/jsonlint/tree/1.9.0"
1514 | },
1515 | "funding": [
1516 | {
1517 | "url": "https://github.com/Seldaek",
1518 | "type": "github"
1519 | },
1520 | {
1521 | "url": "https://tidelift.com/funding/github/packagist/seld/jsonlint",
1522 | "type": "tidelift"
1523 | }
1524 | ],
1525 | "time": "2022-04-01T13:37:23+00:00"
1526 | },
1527 | {
1528 | "name": "seld/phar-utils",
1529 | "version": "1.2.1",
1530 | "source": {
1531 | "type": "git",
1532 | "url": "https://github.com/Seldaek/phar-utils.git",
1533 | "reference": "ea2f4014f163c1be4c601b9b7bd6af81ba8d701c"
1534 | },
1535 | "dist": {
1536 | "type": "zip",
1537 | "url": "https://api.github.com/repos/Seldaek/phar-utils/zipball/ea2f4014f163c1be4c601b9b7bd6af81ba8d701c",
1538 | "reference": "ea2f4014f163c1be4c601b9b7bd6af81ba8d701c",
1539 | "shasum": ""
1540 | },
1541 | "require": {
1542 | "php": ">=5.3"
1543 | },
1544 | "type": "library",
1545 | "extra": {
1546 | "branch-alias": {
1547 | "dev-master": "1.x-dev"
1548 | }
1549 | },
1550 | "autoload": {
1551 | "psr-4": {
1552 | "Seld\\PharUtils\\": "src/"
1553 | }
1554 | },
1555 | "notification-url": "https://packagist.org/downloads/",
1556 | "license": [
1557 | "MIT"
1558 | ],
1559 | "authors": [
1560 | {
1561 | "name": "Jordi Boggiano",
1562 | "email": "j.boggiano@seld.be"
1563 | }
1564 | ],
1565 | "description": "PHAR file format utilities, for when PHP phars you up",
1566 | "keywords": [
1567 | "phar"
1568 | ],
1569 | "support": {
1570 | "issues": "https://github.com/Seldaek/phar-utils/issues",
1571 | "source": "https://github.com/Seldaek/phar-utils/tree/1.2.1"
1572 | },
1573 | "time": "2022-08-31T10:31:18+00:00"
1574 | },
1575 | {
1576 | "name": "seld/signal-handler",
1577 | "version": "2.0.1",
1578 | "source": {
1579 | "type": "git",
1580 | "url": "https://github.com/Seldaek/signal-handler.git",
1581 | "reference": "f69d119511dc0360440cdbdaa71829c149b7be75"
1582 | },
1583 | "dist": {
1584 | "type": "zip",
1585 | "url": "https://api.github.com/repos/Seldaek/signal-handler/zipball/f69d119511dc0360440cdbdaa71829c149b7be75",
1586 | "reference": "f69d119511dc0360440cdbdaa71829c149b7be75",
1587 | "shasum": ""
1588 | },
1589 | "require": {
1590 | "php": ">=7.2.0"
1591 | },
1592 | "require-dev": {
1593 | "phpstan/phpstan": "^1",
1594 | "phpstan/phpstan-deprecation-rules": "^1.0",
1595 | "phpstan/phpstan-phpunit": "^1",
1596 | "phpstan/phpstan-strict-rules": "^1.3",
1597 | "phpunit/phpunit": "^7.5.20 || ^8.5.23",
1598 | "psr/log": "^1 || ^2 || ^3"
1599 | },
1600 | "type": "library",
1601 | "extra": {
1602 | "branch-alias": {
1603 | "dev-main": "2.x-dev"
1604 | }
1605 | },
1606 | "autoload": {
1607 | "psr-4": {
1608 | "Seld\\Signal\\": "src/"
1609 | }
1610 | },
1611 | "notification-url": "https://packagist.org/downloads/",
1612 | "license": [
1613 | "MIT"
1614 | ],
1615 | "authors": [
1616 | {
1617 | "name": "Jordi Boggiano",
1618 | "email": "j.boggiano@seld.be",
1619 | "homepage": "http://seld.be"
1620 | }
1621 | ],
1622 | "description": "Simple unix signal handler that silently fails where signals are not supported for easy cross-platform development",
1623 | "keywords": [
1624 | "posix",
1625 | "sigint",
1626 | "signal",
1627 | "sigterm",
1628 | "unix"
1629 | ],
1630 | "support": {
1631 | "issues": "https://github.com/Seldaek/signal-handler/issues",
1632 | "source": "https://github.com/Seldaek/signal-handler/tree/2.0.1"
1633 | },
1634 | "time": "2022-07-20T18:31:45+00:00"
1635 | },
1636 | {
1637 | "name": "symfony/console",
1638 | "version": "v6.2.3",
1639 | "source": {
1640 | "type": "git",
1641 | "url": "https://github.com/symfony/console.git",
1642 | "reference": "0f579613e771dba2dbb8211c382342a641f5da06"
1643 | },
1644 | "dist": {
1645 | "type": "zip",
1646 | "url": "https://api.github.com/repos/symfony/console/zipball/0f579613e771dba2dbb8211c382342a641f5da06",
1647 | "reference": "0f579613e771dba2dbb8211c382342a641f5da06",
1648 | "shasum": ""
1649 | },
1650 | "require": {
1651 | "php": ">=8.1",
1652 | "symfony/deprecation-contracts": "^2.1|^3",
1653 | "symfony/polyfill-mbstring": "~1.0",
1654 | "symfony/service-contracts": "^1.1|^2|^3",
1655 | "symfony/string": "^5.4|^6.0"
1656 | },
1657 | "conflict": {
1658 | "symfony/dependency-injection": "<5.4",
1659 | "symfony/dotenv": "<5.4",
1660 | "symfony/event-dispatcher": "<5.4",
1661 | "symfony/lock": "<5.4",
1662 | "symfony/process": "<5.4"
1663 | },
1664 | "provide": {
1665 | "psr/log-implementation": "1.0|2.0|3.0"
1666 | },
1667 | "require-dev": {
1668 | "psr/log": "^1|^2|^3",
1669 | "symfony/config": "^5.4|^6.0",
1670 | "symfony/dependency-injection": "^5.4|^6.0",
1671 | "symfony/event-dispatcher": "^5.4|^6.0",
1672 | "symfony/lock": "^5.4|^6.0",
1673 | "symfony/process": "^5.4|^6.0",
1674 | "symfony/var-dumper": "^5.4|^6.0"
1675 | },
1676 | "suggest": {
1677 | "psr/log": "For using the console logger",
1678 | "symfony/event-dispatcher": "",
1679 | "symfony/lock": "",
1680 | "symfony/process": ""
1681 | },
1682 | "type": "library",
1683 | "autoload": {
1684 | "psr-4": {
1685 | "Symfony\\Component\\Console\\": ""
1686 | },
1687 | "exclude-from-classmap": [
1688 | "/Tests/"
1689 | ]
1690 | },
1691 | "notification-url": "https://packagist.org/downloads/",
1692 | "license": [
1693 | "MIT"
1694 | ],
1695 | "authors": [
1696 | {
1697 | "name": "Fabien Potencier",
1698 | "email": "fabien@symfony.com"
1699 | },
1700 | {
1701 | "name": "Symfony Community",
1702 | "homepage": "https://symfony.com/contributors"
1703 | }
1704 | ],
1705 | "description": "Eases the creation of beautiful and testable command line interfaces",
1706 | "homepage": "https://symfony.com",
1707 | "keywords": [
1708 | "cli",
1709 | "command line",
1710 | "console",
1711 | "terminal"
1712 | ],
1713 | "support": {
1714 | "source": "https://github.com/symfony/console/tree/v6.2.3"
1715 | },
1716 | "funding": [
1717 | {
1718 | "url": "https://symfony.com/sponsor",
1719 | "type": "custom"
1720 | },
1721 | {
1722 | "url": "https://github.com/fabpot",
1723 | "type": "github"
1724 | },
1725 | {
1726 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1727 | "type": "tidelift"
1728 | }
1729 | ],
1730 | "time": "2022-12-28T14:26:22+00:00"
1731 | },
1732 | {
1733 | "name": "symfony/deprecation-contracts",
1734 | "version": "v3.2.0",
1735 | "source": {
1736 | "type": "git",
1737 | "url": "https://github.com/symfony/deprecation-contracts.git",
1738 | "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3"
1739 | },
1740 | "dist": {
1741 | "type": "zip",
1742 | "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/1ee04c65529dea5d8744774d474e7cbd2f1206d3",
1743 | "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3",
1744 | "shasum": ""
1745 | },
1746 | "require": {
1747 | "php": ">=8.1"
1748 | },
1749 | "type": "library",
1750 | "extra": {
1751 | "branch-alias": {
1752 | "dev-main": "3.3-dev"
1753 | },
1754 | "thanks": {
1755 | "name": "symfony/contracts",
1756 | "url": "https://github.com/symfony/contracts"
1757 | }
1758 | },
1759 | "autoload": {
1760 | "files": [
1761 | "function.php"
1762 | ]
1763 | },
1764 | "notification-url": "https://packagist.org/downloads/",
1765 | "license": [
1766 | "MIT"
1767 | ],
1768 | "authors": [
1769 | {
1770 | "name": "Nicolas Grekas",
1771 | "email": "p@tchwork.com"
1772 | },
1773 | {
1774 | "name": "Symfony Community",
1775 | "homepage": "https://symfony.com/contributors"
1776 | }
1777 | ],
1778 | "description": "A generic function and convention to trigger deprecation notices",
1779 | "homepage": "https://symfony.com",
1780 | "support": {
1781 | "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.0"
1782 | },
1783 | "funding": [
1784 | {
1785 | "url": "https://symfony.com/sponsor",
1786 | "type": "custom"
1787 | },
1788 | {
1789 | "url": "https://github.com/fabpot",
1790 | "type": "github"
1791 | },
1792 | {
1793 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1794 | "type": "tidelift"
1795 | }
1796 | ],
1797 | "time": "2022-11-25T10:21:52+00:00"
1798 | },
1799 | {
1800 | "name": "symfony/event-dispatcher",
1801 | "version": "v6.2.2",
1802 | "source": {
1803 | "type": "git",
1804 | "url": "https://github.com/symfony/event-dispatcher.git",
1805 | "reference": "3ffeb31139b49bf6ef0bc09d1db95eac053388d1"
1806 | },
1807 | "dist": {
1808 | "type": "zip",
1809 | "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/3ffeb31139b49bf6ef0bc09d1db95eac053388d1",
1810 | "reference": "3ffeb31139b49bf6ef0bc09d1db95eac053388d1",
1811 | "shasum": ""
1812 | },
1813 | "require": {
1814 | "php": ">=8.1",
1815 | "symfony/event-dispatcher-contracts": "^2|^3"
1816 | },
1817 | "conflict": {
1818 | "symfony/dependency-injection": "<5.4"
1819 | },
1820 | "provide": {
1821 | "psr/event-dispatcher-implementation": "1.0",
1822 | "symfony/event-dispatcher-implementation": "2.0|3.0"
1823 | },
1824 | "require-dev": {
1825 | "psr/log": "^1|^2|^3",
1826 | "symfony/config": "^5.4|^6.0",
1827 | "symfony/dependency-injection": "^5.4|^6.0",
1828 | "symfony/error-handler": "^5.4|^6.0",
1829 | "symfony/expression-language": "^5.4|^6.0",
1830 | "symfony/http-foundation": "^5.4|^6.0",
1831 | "symfony/service-contracts": "^1.1|^2|^3",
1832 | "symfony/stopwatch": "^5.4|^6.0"
1833 | },
1834 | "suggest": {
1835 | "symfony/dependency-injection": "",
1836 | "symfony/http-kernel": ""
1837 | },
1838 | "type": "library",
1839 | "autoload": {
1840 | "psr-4": {
1841 | "Symfony\\Component\\EventDispatcher\\": ""
1842 | },
1843 | "exclude-from-classmap": [
1844 | "/Tests/"
1845 | ]
1846 | },
1847 | "notification-url": "https://packagist.org/downloads/",
1848 | "license": [
1849 | "MIT"
1850 | ],
1851 | "authors": [
1852 | {
1853 | "name": "Fabien Potencier",
1854 | "email": "fabien@symfony.com"
1855 | },
1856 | {
1857 | "name": "Symfony Community",
1858 | "homepage": "https://symfony.com/contributors"
1859 | }
1860 | ],
1861 | "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
1862 | "homepage": "https://symfony.com",
1863 | "support": {
1864 | "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.2"
1865 | },
1866 | "funding": [
1867 | {
1868 | "url": "https://symfony.com/sponsor",
1869 | "type": "custom"
1870 | },
1871 | {
1872 | "url": "https://github.com/fabpot",
1873 | "type": "github"
1874 | },
1875 | {
1876 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1877 | "type": "tidelift"
1878 | }
1879 | ],
1880 | "time": "2022-12-14T16:11:27+00:00"
1881 | },
1882 | {
1883 | "name": "symfony/event-dispatcher-contracts",
1884 | "version": "v3.2.0",
1885 | "source": {
1886 | "type": "git",
1887 | "url": "https://github.com/symfony/event-dispatcher-contracts.git",
1888 | "reference": "0782b0b52a737a05b4383d0df35a474303cabdae"
1889 | },
1890 | "dist": {
1891 | "type": "zip",
1892 | "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0782b0b52a737a05b4383d0df35a474303cabdae",
1893 | "reference": "0782b0b52a737a05b4383d0df35a474303cabdae",
1894 | "shasum": ""
1895 | },
1896 | "require": {
1897 | "php": ">=8.1",
1898 | "psr/event-dispatcher": "^1"
1899 | },
1900 | "suggest": {
1901 | "symfony/event-dispatcher-implementation": ""
1902 | },
1903 | "type": "library",
1904 | "extra": {
1905 | "branch-alias": {
1906 | "dev-main": "3.3-dev"
1907 | },
1908 | "thanks": {
1909 | "name": "symfony/contracts",
1910 | "url": "https://github.com/symfony/contracts"
1911 | }
1912 | },
1913 | "autoload": {
1914 | "psr-4": {
1915 | "Symfony\\Contracts\\EventDispatcher\\": ""
1916 | }
1917 | },
1918 | "notification-url": "https://packagist.org/downloads/",
1919 | "license": [
1920 | "MIT"
1921 | ],
1922 | "authors": [
1923 | {
1924 | "name": "Nicolas Grekas",
1925 | "email": "p@tchwork.com"
1926 | },
1927 | {
1928 | "name": "Symfony Community",
1929 | "homepage": "https://symfony.com/contributors"
1930 | }
1931 | ],
1932 | "description": "Generic abstractions related to dispatching event",
1933 | "homepage": "https://symfony.com",
1934 | "keywords": [
1935 | "abstractions",
1936 | "contracts",
1937 | "decoupling",
1938 | "interfaces",
1939 | "interoperability",
1940 | "standards"
1941 | ],
1942 | "support": {
1943 | "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.0"
1944 | },
1945 | "funding": [
1946 | {
1947 | "url": "https://symfony.com/sponsor",
1948 | "type": "custom"
1949 | },
1950 | {
1951 | "url": "https://github.com/fabpot",
1952 | "type": "github"
1953 | },
1954 | {
1955 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
1956 | "type": "tidelift"
1957 | }
1958 | ],
1959 | "time": "2022-11-25T10:21:52+00:00"
1960 | },
1961 | {
1962 | "name": "symfony/filesystem",
1963 | "version": "v6.2.0",
1964 | "source": {
1965 | "type": "git",
1966 | "url": "https://github.com/symfony/filesystem.git",
1967 | "reference": "50b2523c874605cf3d4acf7a9e2b30b6a440a016"
1968 | },
1969 | "dist": {
1970 | "type": "zip",
1971 | "url": "https://api.github.com/repos/symfony/filesystem/zipball/50b2523c874605cf3d4acf7a9e2b30b6a440a016",
1972 | "reference": "50b2523c874605cf3d4acf7a9e2b30b6a440a016",
1973 | "shasum": ""
1974 | },
1975 | "require": {
1976 | "php": ">=8.1",
1977 | "symfony/polyfill-ctype": "~1.8",
1978 | "symfony/polyfill-mbstring": "~1.8"
1979 | },
1980 | "type": "library",
1981 | "autoload": {
1982 | "psr-4": {
1983 | "Symfony\\Component\\Filesystem\\": ""
1984 | },
1985 | "exclude-from-classmap": [
1986 | "/Tests/"
1987 | ]
1988 | },
1989 | "notification-url": "https://packagist.org/downloads/",
1990 | "license": [
1991 | "MIT"
1992 | ],
1993 | "authors": [
1994 | {
1995 | "name": "Fabien Potencier",
1996 | "email": "fabien@symfony.com"
1997 | },
1998 | {
1999 | "name": "Symfony Community",
2000 | "homepage": "https://symfony.com/contributors"
2001 | }
2002 | ],
2003 | "description": "Provides basic utilities for the filesystem",
2004 | "homepage": "https://symfony.com",
2005 | "support": {
2006 | "source": "https://github.com/symfony/filesystem/tree/v6.2.0"
2007 | },
2008 | "funding": [
2009 | {
2010 | "url": "https://symfony.com/sponsor",
2011 | "type": "custom"
2012 | },
2013 | {
2014 | "url": "https://github.com/fabpot",
2015 | "type": "github"
2016 | },
2017 | {
2018 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2019 | "type": "tidelift"
2020 | }
2021 | ],
2022 | "time": "2022-11-20T13:01:27+00:00"
2023 | },
2024 | {
2025 | "name": "symfony/finder",
2026 | "version": "v6.2.3",
2027 | "source": {
2028 | "type": "git",
2029 | "url": "https://github.com/symfony/finder.git",
2030 | "reference": "81eefbddfde282ee33b437ba5e13d7753211ae8e"
2031 | },
2032 | "dist": {
2033 | "type": "zip",
2034 | "url": "https://api.github.com/repos/symfony/finder/zipball/81eefbddfde282ee33b437ba5e13d7753211ae8e",
2035 | "reference": "81eefbddfde282ee33b437ba5e13d7753211ae8e",
2036 | "shasum": ""
2037 | },
2038 | "require": {
2039 | "php": ">=8.1"
2040 | },
2041 | "require-dev": {
2042 | "symfony/filesystem": "^6.0"
2043 | },
2044 | "type": "library",
2045 | "autoload": {
2046 | "psr-4": {
2047 | "Symfony\\Component\\Finder\\": ""
2048 | },
2049 | "exclude-from-classmap": [
2050 | "/Tests/"
2051 | ]
2052 | },
2053 | "notification-url": "https://packagist.org/downloads/",
2054 | "license": [
2055 | "MIT"
2056 | ],
2057 | "authors": [
2058 | {
2059 | "name": "Fabien Potencier",
2060 | "email": "fabien@symfony.com"
2061 | },
2062 | {
2063 | "name": "Symfony Community",
2064 | "homepage": "https://symfony.com/contributors"
2065 | }
2066 | ],
2067 | "description": "Finds files and directories via an intuitive fluent interface",
2068 | "homepage": "https://symfony.com",
2069 | "support": {
2070 | "source": "https://github.com/symfony/finder/tree/v6.2.3"
2071 | },
2072 | "funding": [
2073 | {
2074 | "url": "https://symfony.com/sponsor",
2075 | "type": "custom"
2076 | },
2077 | {
2078 | "url": "https://github.com/fabpot",
2079 | "type": "github"
2080 | },
2081 | {
2082 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2083 | "type": "tidelift"
2084 | }
2085 | ],
2086 | "time": "2022-12-22T17:55:15+00:00"
2087 | },
2088 | {
2089 | "name": "symfony/options-resolver",
2090 | "version": "v6.2.0",
2091 | "source": {
2092 | "type": "git",
2093 | "url": "https://github.com/symfony/options-resolver.git",
2094 | "reference": "d28f02acde71ff75e957082cd36e973df395f626"
2095 | },
2096 | "dist": {
2097 | "type": "zip",
2098 | "url": "https://api.github.com/repos/symfony/options-resolver/zipball/d28f02acde71ff75e957082cd36e973df395f626",
2099 | "reference": "d28f02acde71ff75e957082cd36e973df395f626",
2100 | "shasum": ""
2101 | },
2102 | "require": {
2103 | "php": ">=8.1",
2104 | "symfony/deprecation-contracts": "^2.1|^3"
2105 | },
2106 | "type": "library",
2107 | "autoload": {
2108 | "psr-4": {
2109 | "Symfony\\Component\\OptionsResolver\\": ""
2110 | },
2111 | "exclude-from-classmap": [
2112 | "/Tests/"
2113 | ]
2114 | },
2115 | "notification-url": "https://packagist.org/downloads/",
2116 | "license": [
2117 | "MIT"
2118 | ],
2119 | "authors": [
2120 | {
2121 | "name": "Fabien Potencier",
2122 | "email": "fabien@symfony.com"
2123 | },
2124 | {
2125 | "name": "Symfony Community",
2126 | "homepage": "https://symfony.com/contributors"
2127 | }
2128 | ],
2129 | "description": "Provides an improved replacement for the array_replace PHP function",
2130 | "homepage": "https://symfony.com",
2131 | "keywords": [
2132 | "config",
2133 | "configuration",
2134 | "options"
2135 | ],
2136 | "support": {
2137 | "source": "https://github.com/symfony/options-resolver/tree/v6.2.0"
2138 | },
2139 | "funding": [
2140 | {
2141 | "url": "https://symfony.com/sponsor",
2142 | "type": "custom"
2143 | },
2144 | {
2145 | "url": "https://github.com/fabpot",
2146 | "type": "github"
2147 | },
2148 | {
2149 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2150 | "type": "tidelift"
2151 | }
2152 | ],
2153 | "time": "2022-11-02T09:08:04+00:00"
2154 | },
2155 | {
2156 | "name": "symfony/phpunit-bridge",
2157 | "version": "v6.2.3",
2158 | "source": {
2159 | "type": "git",
2160 | "url": "https://github.com/symfony/phpunit-bridge.git",
2161 | "reference": "3766b8269d3bac5c214a04ebd6870e71e52bcb60"
2162 | },
2163 | "dist": {
2164 | "type": "zip",
2165 | "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/3766b8269d3bac5c214a04ebd6870e71e52bcb60",
2166 | "reference": "3766b8269d3bac5c214a04ebd6870e71e52bcb60",
2167 | "shasum": ""
2168 | },
2169 | "require": {
2170 | "php": ">=7.1.3"
2171 | },
2172 | "conflict": {
2173 | "phpunit/phpunit": "<7.5|9.1.2"
2174 | },
2175 | "require-dev": {
2176 | "symfony/deprecation-contracts": "^2.1|^3.0",
2177 | "symfony/error-handler": "^5.4|^6.0"
2178 | },
2179 | "suggest": {
2180 | "symfony/error-handler": "For tracking deprecated interfaces usages at runtime with DebugClassLoader"
2181 | },
2182 | "bin": [
2183 | "bin/simple-phpunit"
2184 | ],
2185 | "type": "symfony-bridge",
2186 | "extra": {
2187 | "thanks": {
2188 | "name": "phpunit/phpunit",
2189 | "url": "https://github.com/sebastianbergmann/phpunit"
2190 | }
2191 | },
2192 | "autoload": {
2193 | "files": [
2194 | "bootstrap.php"
2195 | ],
2196 | "psr-4": {
2197 | "Symfony\\Bridge\\PhpUnit\\": ""
2198 | },
2199 | "exclude-from-classmap": [
2200 | "/Tests/"
2201 | ]
2202 | },
2203 | "notification-url": "https://packagist.org/downloads/",
2204 | "license": [
2205 | "MIT"
2206 | ],
2207 | "authors": [
2208 | {
2209 | "name": "Nicolas Grekas",
2210 | "email": "p@tchwork.com"
2211 | },
2212 | {
2213 | "name": "Symfony Community",
2214 | "homepage": "https://symfony.com/contributors"
2215 | }
2216 | ],
2217 | "description": "Provides utilities for PHPUnit, especially user deprecation notices management",
2218 | "homepage": "https://symfony.com",
2219 | "support": {
2220 | "source": "https://github.com/symfony/phpunit-bridge/tree/v6.2.3"
2221 | },
2222 | "funding": [
2223 | {
2224 | "url": "https://symfony.com/sponsor",
2225 | "type": "custom"
2226 | },
2227 | {
2228 | "url": "https://github.com/fabpot",
2229 | "type": "github"
2230 | },
2231 | {
2232 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2233 | "type": "tidelift"
2234 | }
2235 | ],
2236 | "time": "2022-12-28T14:26:22+00:00"
2237 | },
2238 | {
2239 | "name": "symfony/polyfill-ctype",
2240 | "version": "v1.27.0",
2241 | "source": {
2242 | "type": "git",
2243 | "url": "https://github.com/symfony/polyfill-ctype.git",
2244 | "reference": "5bbc823adecdae860bb64756d639ecfec17b050a"
2245 | },
2246 | "dist": {
2247 | "type": "zip",
2248 | "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a",
2249 | "reference": "5bbc823adecdae860bb64756d639ecfec17b050a",
2250 | "shasum": ""
2251 | },
2252 | "require": {
2253 | "php": ">=7.1"
2254 | },
2255 | "provide": {
2256 | "ext-ctype": "*"
2257 | },
2258 | "suggest": {
2259 | "ext-ctype": "For best performance"
2260 | },
2261 | "type": "library",
2262 | "extra": {
2263 | "branch-alias": {
2264 | "dev-main": "1.27-dev"
2265 | },
2266 | "thanks": {
2267 | "name": "symfony/polyfill",
2268 | "url": "https://github.com/symfony/polyfill"
2269 | }
2270 | },
2271 | "autoload": {
2272 | "files": [
2273 | "bootstrap.php"
2274 | ],
2275 | "psr-4": {
2276 | "Symfony\\Polyfill\\Ctype\\": ""
2277 | }
2278 | },
2279 | "notification-url": "https://packagist.org/downloads/",
2280 | "license": [
2281 | "MIT"
2282 | ],
2283 | "authors": [
2284 | {
2285 | "name": "Gert de Pagter",
2286 | "email": "BackEndTea@gmail.com"
2287 | },
2288 | {
2289 | "name": "Symfony Community",
2290 | "homepage": "https://symfony.com/contributors"
2291 | }
2292 | ],
2293 | "description": "Symfony polyfill for ctype functions",
2294 | "homepage": "https://symfony.com",
2295 | "keywords": [
2296 | "compatibility",
2297 | "ctype",
2298 | "polyfill",
2299 | "portable"
2300 | ],
2301 | "support": {
2302 | "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0"
2303 | },
2304 | "funding": [
2305 | {
2306 | "url": "https://symfony.com/sponsor",
2307 | "type": "custom"
2308 | },
2309 | {
2310 | "url": "https://github.com/fabpot",
2311 | "type": "github"
2312 | },
2313 | {
2314 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2315 | "type": "tidelift"
2316 | }
2317 | ],
2318 | "time": "2022-11-03T14:55:06+00:00"
2319 | },
2320 | {
2321 | "name": "symfony/polyfill-intl-grapheme",
2322 | "version": "v1.27.0",
2323 | "source": {
2324 | "type": "git",
2325 | "url": "https://github.com/symfony/polyfill-intl-grapheme.git",
2326 | "reference": "511a08c03c1960e08a883f4cffcacd219b758354"
2327 | },
2328 | "dist": {
2329 | "type": "zip",
2330 | "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354",
2331 | "reference": "511a08c03c1960e08a883f4cffcacd219b758354",
2332 | "shasum": ""
2333 | },
2334 | "require": {
2335 | "php": ">=7.1"
2336 | },
2337 | "suggest": {
2338 | "ext-intl": "For best performance"
2339 | },
2340 | "type": "library",
2341 | "extra": {
2342 | "branch-alias": {
2343 | "dev-main": "1.27-dev"
2344 | },
2345 | "thanks": {
2346 | "name": "symfony/polyfill",
2347 | "url": "https://github.com/symfony/polyfill"
2348 | }
2349 | },
2350 | "autoload": {
2351 | "files": [
2352 | "bootstrap.php"
2353 | ],
2354 | "psr-4": {
2355 | "Symfony\\Polyfill\\Intl\\Grapheme\\": ""
2356 | }
2357 | },
2358 | "notification-url": "https://packagist.org/downloads/",
2359 | "license": [
2360 | "MIT"
2361 | ],
2362 | "authors": [
2363 | {
2364 | "name": "Nicolas Grekas",
2365 | "email": "p@tchwork.com"
2366 | },
2367 | {
2368 | "name": "Symfony Community",
2369 | "homepage": "https://symfony.com/contributors"
2370 | }
2371 | ],
2372 | "description": "Symfony polyfill for intl's grapheme_* functions",
2373 | "homepage": "https://symfony.com",
2374 | "keywords": [
2375 | "compatibility",
2376 | "grapheme",
2377 | "intl",
2378 | "polyfill",
2379 | "portable",
2380 | "shim"
2381 | ],
2382 | "support": {
2383 | "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0"
2384 | },
2385 | "funding": [
2386 | {
2387 | "url": "https://symfony.com/sponsor",
2388 | "type": "custom"
2389 | },
2390 | {
2391 | "url": "https://github.com/fabpot",
2392 | "type": "github"
2393 | },
2394 | {
2395 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2396 | "type": "tidelift"
2397 | }
2398 | ],
2399 | "time": "2022-11-03T14:55:06+00:00"
2400 | },
2401 | {
2402 | "name": "symfony/polyfill-intl-normalizer",
2403 | "version": "v1.27.0",
2404 | "source": {
2405 | "type": "git",
2406 | "url": "https://github.com/symfony/polyfill-intl-normalizer.git",
2407 | "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6"
2408 | },
2409 | "dist": {
2410 | "type": "zip",
2411 | "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6",
2412 | "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6",
2413 | "shasum": ""
2414 | },
2415 | "require": {
2416 | "php": ">=7.1"
2417 | },
2418 | "suggest": {
2419 | "ext-intl": "For best performance"
2420 | },
2421 | "type": "library",
2422 | "extra": {
2423 | "branch-alias": {
2424 | "dev-main": "1.27-dev"
2425 | },
2426 | "thanks": {
2427 | "name": "symfony/polyfill",
2428 | "url": "https://github.com/symfony/polyfill"
2429 | }
2430 | },
2431 | "autoload": {
2432 | "files": [
2433 | "bootstrap.php"
2434 | ],
2435 | "psr-4": {
2436 | "Symfony\\Polyfill\\Intl\\Normalizer\\": ""
2437 | },
2438 | "classmap": [
2439 | "Resources/stubs"
2440 | ]
2441 | },
2442 | "notification-url": "https://packagist.org/downloads/",
2443 | "license": [
2444 | "MIT"
2445 | ],
2446 | "authors": [
2447 | {
2448 | "name": "Nicolas Grekas",
2449 | "email": "p@tchwork.com"
2450 | },
2451 | {
2452 | "name": "Symfony Community",
2453 | "homepage": "https://symfony.com/contributors"
2454 | }
2455 | ],
2456 | "description": "Symfony polyfill for intl's Normalizer class and related functions",
2457 | "homepage": "https://symfony.com",
2458 | "keywords": [
2459 | "compatibility",
2460 | "intl",
2461 | "normalizer",
2462 | "polyfill",
2463 | "portable",
2464 | "shim"
2465 | ],
2466 | "support": {
2467 | "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0"
2468 | },
2469 | "funding": [
2470 | {
2471 | "url": "https://symfony.com/sponsor",
2472 | "type": "custom"
2473 | },
2474 | {
2475 | "url": "https://github.com/fabpot",
2476 | "type": "github"
2477 | },
2478 | {
2479 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2480 | "type": "tidelift"
2481 | }
2482 | ],
2483 | "time": "2022-11-03T14:55:06+00:00"
2484 | },
2485 | {
2486 | "name": "symfony/polyfill-mbstring",
2487 | "version": "v1.27.0",
2488 | "source": {
2489 | "type": "git",
2490 | "url": "https://github.com/symfony/polyfill-mbstring.git",
2491 | "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534"
2492 | },
2493 | "dist": {
2494 | "type": "zip",
2495 | "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534",
2496 | "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534",
2497 | "shasum": ""
2498 | },
2499 | "require": {
2500 | "php": ">=7.1"
2501 | },
2502 | "provide": {
2503 | "ext-mbstring": "*"
2504 | },
2505 | "suggest": {
2506 | "ext-mbstring": "For best performance"
2507 | },
2508 | "type": "library",
2509 | "extra": {
2510 | "branch-alias": {
2511 | "dev-main": "1.27-dev"
2512 | },
2513 | "thanks": {
2514 | "name": "symfony/polyfill",
2515 | "url": "https://github.com/symfony/polyfill"
2516 | }
2517 | },
2518 | "autoload": {
2519 | "files": [
2520 | "bootstrap.php"
2521 | ],
2522 | "psr-4": {
2523 | "Symfony\\Polyfill\\Mbstring\\": ""
2524 | }
2525 | },
2526 | "notification-url": "https://packagist.org/downloads/",
2527 | "license": [
2528 | "MIT"
2529 | ],
2530 | "authors": [
2531 | {
2532 | "name": "Nicolas Grekas",
2533 | "email": "p@tchwork.com"
2534 | },
2535 | {
2536 | "name": "Symfony Community",
2537 | "homepage": "https://symfony.com/contributors"
2538 | }
2539 | ],
2540 | "description": "Symfony polyfill for the Mbstring extension",
2541 | "homepage": "https://symfony.com",
2542 | "keywords": [
2543 | "compatibility",
2544 | "mbstring",
2545 | "polyfill",
2546 | "portable",
2547 | "shim"
2548 | ],
2549 | "support": {
2550 | "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0"
2551 | },
2552 | "funding": [
2553 | {
2554 | "url": "https://symfony.com/sponsor",
2555 | "type": "custom"
2556 | },
2557 | {
2558 | "url": "https://github.com/fabpot",
2559 | "type": "github"
2560 | },
2561 | {
2562 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2563 | "type": "tidelift"
2564 | }
2565 | ],
2566 | "time": "2022-11-03T14:55:06+00:00"
2567 | },
2568 | {
2569 | "name": "symfony/polyfill-php73",
2570 | "version": "v1.27.0",
2571 | "source": {
2572 | "type": "git",
2573 | "url": "https://github.com/symfony/polyfill-php73.git",
2574 | "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9"
2575 | },
2576 | "dist": {
2577 | "type": "zip",
2578 | "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9",
2579 | "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9",
2580 | "shasum": ""
2581 | },
2582 | "require": {
2583 | "php": ">=7.1"
2584 | },
2585 | "type": "library",
2586 | "extra": {
2587 | "branch-alias": {
2588 | "dev-main": "1.27-dev"
2589 | },
2590 | "thanks": {
2591 | "name": "symfony/polyfill",
2592 | "url": "https://github.com/symfony/polyfill"
2593 | }
2594 | },
2595 | "autoload": {
2596 | "files": [
2597 | "bootstrap.php"
2598 | ],
2599 | "psr-4": {
2600 | "Symfony\\Polyfill\\Php73\\": ""
2601 | },
2602 | "classmap": [
2603 | "Resources/stubs"
2604 | ]
2605 | },
2606 | "notification-url": "https://packagist.org/downloads/",
2607 | "license": [
2608 | "MIT"
2609 | ],
2610 | "authors": [
2611 | {
2612 | "name": "Nicolas Grekas",
2613 | "email": "p@tchwork.com"
2614 | },
2615 | {
2616 | "name": "Symfony Community",
2617 | "homepage": "https://symfony.com/contributors"
2618 | }
2619 | ],
2620 | "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions",
2621 | "homepage": "https://symfony.com",
2622 | "keywords": [
2623 | "compatibility",
2624 | "polyfill",
2625 | "portable",
2626 | "shim"
2627 | ],
2628 | "support": {
2629 | "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0"
2630 | },
2631 | "funding": [
2632 | {
2633 | "url": "https://symfony.com/sponsor",
2634 | "type": "custom"
2635 | },
2636 | {
2637 | "url": "https://github.com/fabpot",
2638 | "type": "github"
2639 | },
2640 | {
2641 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2642 | "type": "tidelift"
2643 | }
2644 | ],
2645 | "time": "2022-11-03T14:55:06+00:00"
2646 | },
2647 | {
2648 | "name": "symfony/polyfill-php80",
2649 | "version": "v1.27.0",
2650 | "source": {
2651 | "type": "git",
2652 | "url": "https://github.com/symfony/polyfill-php80.git",
2653 | "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936"
2654 | },
2655 | "dist": {
2656 | "type": "zip",
2657 | "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
2658 | "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
2659 | "shasum": ""
2660 | },
2661 | "require": {
2662 | "php": ">=7.1"
2663 | },
2664 | "type": "library",
2665 | "extra": {
2666 | "branch-alias": {
2667 | "dev-main": "1.27-dev"
2668 | },
2669 | "thanks": {
2670 | "name": "symfony/polyfill",
2671 | "url": "https://github.com/symfony/polyfill"
2672 | }
2673 | },
2674 | "autoload": {
2675 | "files": [
2676 | "bootstrap.php"
2677 | ],
2678 | "psr-4": {
2679 | "Symfony\\Polyfill\\Php80\\": ""
2680 | },
2681 | "classmap": [
2682 | "Resources/stubs"
2683 | ]
2684 | },
2685 | "notification-url": "https://packagist.org/downloads/",
2686 | "license": [
2687 | "MIT"
2688 | ],
2689 | "authors": [
2690 | {
2691 | "name": "Ion Bazan",
2692 | "email": "ion.bazan@gmail.com"
2693 | },
2694 | {
2695 | "name": "Nicolas Grekas",
2696 | "email": "p@tchwork.com"
2697 | },
2698 | {
2699 | "name": "Symfony Community",
2700 | "homepage": "https://symfony.com/contributors"
2701 | }
2702 | ],
2703 | "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
2704 | "homepage": "https://symfony.com",
2705 | "keywords": [
2706 | "compatibility",
2707 | "polyfill",
2708 | "portable",
2709 | "shim"
2710 | ],
2711 | "support": {
2712 | "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0"
2713 | },
2714 | "funding": [
2715 | {
2716 | "url": "https://symfony.com/sponsor",
2717 | "type": "custom"
2718 | },
2719 | {
2720 | "url": "https://github.com/fabpot",
2721 | "type": "github"
2722 | },
2723 | {
2724 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2725 | "type": "tidelift"
2726 | }
2727 | ],
2728 | "time": "2022-11-03T14:55:06+00:00"
2729 | },
2730 | {
2731 | "name": "symfony/polyfill-php81",
2732 | "version": "v1.27.0",
2733 | "source": {
2734 | "type": "git",
2735 | "url": "https://github.com/symfony/polyfill-php81.git",
2736 | "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a"
2737 | },
2738 | "dist": {
2739 | "type": "zip",
2740 | "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a",
2741 | "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a",
2742 | "shasum": ""
2743 | },
2744 | "require": {
2745 | "php": ">=7.1"
2746 | },
2747 | "type": "library",
2748 | "extra": {
2749 | "branch-alias": {
2750 | "dev-main": "1.27-dev"
2751 | },
2752 | "thanks": {
2753 | "name": "symfony/polyfill",
2754 | "url": "https://github.com/symfony/polyfill"
2755 | }
2756 | },
2757 | "autoload": {
2758 | "files": [
2759 | "bootstrap.php"
2760 | ],
2761 | "psr-4": {
2762 | "Symfony\\Polyfill\\Php81\\": ""
2763 | },
2764 | "classmap": [
2765 | "Resources/stubs"
2766 | ]
2767 | },
2768 | "notification-url": "https://packagist.org/downloads/",
2769 | "license": [
2770 | "MIT"
2771 | ],
2772 | "authors": [
2773 | {
2774 | "name": "Nicolas Grekas",
2775 | "email": "p@tchwork.com"
2776 | },
2777 | {
2778 | "name": "Symfony Community",
2779 | "homepage": "https://symfony.com/contributors"
2780 | }
2781 | ],
2782 | "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions",
2783 | "homepage": "https://symfony.com",
2784 | "keywords": [
2785 | "compatibility",
2786 | "polyfill",
2787 | "portable",
2788 | "shim"
2789 | ],
2790 | "support": {
2791 | "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0"
2792 | },
2793 | "funding": [
2794 | {
2795 | "url": "https://symfony.com/sponsor",
2796 | "type": "custom"
2797 | },
2798 | {
2799 | "url": "https://github.com/fabpot",
2800 | "type": "github"
2801 | },
2802 | {
2803 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2804 | "type": "tidelift"
2805 | }
2806 | ],
2807 | "time": "2022-11-03T14:55:06+00:00"
2808 | },
2809 | {
2810 | "name": "symfony/service-contracts",
2811 | "version": "v3.2.0",
2812 | "source": {
2813 | "type": "git",
2814 | "url": "https://github.com/symfony/service-contracts.git",
2815 | "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75"
2816 | },
2817 | "dist": {
2818 | "type": "zip",
2819 | "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75",
2820 | "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75",
2821 | "shasum": ""
2822 | },
2823 | "require": {
2824 | "php": ">=8.1",
2825 | "psr/container": "^2.0"
2826 | },
2827 | "conflict": {
2828 | "ext-psr": "<1.1|>=2"
2829 | },
2830 | "suggest": {
2831 | "symfony/service-implementation": ""
2832 | },
2833 | "type": "library",
2834 | "extra": {
2835 | "branch-alias": {
2836 | "dev-main": "3.3-dev"
2837 | },
2838 | "thanks": {
2839 | "name": "symfony/contracts",
2840 | "url": "https://github.com/symfony/contracts"
2841 | }
2842 | },
2843 | "autoload": {
2844 | "psr-4": {
2845 | "Symfony\\Contracts\\Service\\": ""
2846 | },
2847 | "exclude-from-classmap": [
2848 | "/Test/"
2849 | ]
2850 | },
2851 | "notification-url": "https://packagist.org/downloads/",
2852 | "license": [
2853 | "MIT"
2854 | ],
2855 | "authors": [
2856 | {
2857 | "name": "Nicolas Grekas",
2858 | "email": "p@tchwork.com"
2859 | },
2860 | {
2861 | "name": "Symfony Community",
2862 | "homepage": "https://symfony.com/contributors"
2863 | }
2864 | ],
2865 | "description": "Generic abstractions related to writing services",
2866 | "homepage": "https://symfony.com",
2867 | "keywords": [
2868 | "abstractions",
2869 | "contracts",
2870 | "decoupling",
2871 | "interfaces",
2872 | "interoperability",
2873 | "standards"
2874 | ],
2875 | "support": {
2876 | "source": "https://github.com/symfony/service-contracts/tree/v3.2.0"
2877 | },
2878 | "funding": [
2879 | {
2880 | "url": "https://symfony.com/sponsor",
2881 | "type": "custom"
2882 | },
2883 | {
2884 | "url": "https://github.com/fabpot",
2885 | "type": "github"
2886 | },
2887 | {
2888 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2889 | "type": "tidelift"
2890 | }
2891 | ],
2892 | "time": "2022-11-25T10:21:52+00:00"
2893 | },
2894 | {
2895 | "name": "symfony/stopwatch",
2896 | "version": "v6.2.0",
2897 | "source": {
2898 | "type": "git",
2899 | "url": "https://github.com/symfony/stopwatch.git",
2900 | "reference": "266636bb8f3fbdccc302491df7b3a1b9a8c238a7"
2901 | },
2902 | "dist": {
2903 | "type": "zip",
2904 | "url": "https://api.github.com/repos/symfony/stopwatch/zipball/266636bb8f3fbdccc302491df7b3a1b9a8c238a7",
2905 | "reference": "266636bb8f3fbdccc302491df7b3a1b9a8c238a7",
2906 | "shasum": ""
2907 | },
2908 | "require": {
2909 | "php": ">=8.1",
2910 | "symfony/service-contracts": "^1|^2|^3"
2911 | },
2912 | "type": "library",
2913 | "autoload": {
2914 | "psr-4": {
2915 | "Symfony\\Component\\Stopwatch\\": ""
2916 | },
2917 | "exclude-from-classmap": [
2918 | "/Tests/"
2919 | ]
2920 | },
2921 | "notification-url": "https://packagist.org/downloads/",
2922 | "license": [
2923 | "MIT"
2924 | ],
2925 | "authors": [
2926 | {
2927 | "name": "Fabien Potencier",
2928 | "email": "fabien@symfony.com"
2929 | },
2930 | {
2931 | "name": "Symfony Community",
2932 | "homepage": "https://symfony.com/contributors"
2933 | }
2934 | ],
2935 | "description": "Provides a way to profile code",
2936 | "homepage": "https://symfony.com",
2937 | "support": {
2938 | "source": "https://github.com/symfony/stopwatch/tree/v6.2.0"
2939 | },
2940 | "funding": [
2941 | {
2942 | "url": "https://symfony.com/sponsor",
2943 | "type": "custom"
2944 | },
2945 | {
2946 | "url": "https://github.com/fabpot",
2947 | "type": "github"
2948 | },
2949 | {
2950 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2951 | "type": "tidelift"
2952 | }
2953 | ],
2954 | "time": "2022-09-28T16:00:52+00:00"
2955 | },
2956 | {
2957 | "name": "symfony/string",
2958 | "version": "v6.2.2",
2959 | "source": {
2960 | "type": "git",
2961 | "url": "https://github.com/symfony/string.git",
2962 | "reference": "863219fd713fa41cbcd285a79723f94672faff4d"
2963 | },
2964 | "dist": {
2965 | "type": "zip",
2966 | "url": "https://api.github.com/repos/symfony/string/zipball/863219fd713fa41cbcd285a79723f94672faff4d",
2967 | "reference": "863219fd713fa41cbcd285a79723f94672faff4d",
2968 | "shasum": ""
2969 | },
2970 | "require": {
2971 | "php": ">=8.1",
2972 | "symfony/polyfill-ctype": "~1.8",
2973 | "symfony/polyfill-intl-grapheme": "~1.0",
2974 | "symfony/polyfill-intl-normalizer": "~1.0",
2975 | "symfony/polyfill-mbstring": "~1.0"
2976 | },
2977 | "conflict": {
2978 | "symfony/translation-contracts": "<2.0"
2979 | },
2980 | "require-dev": {
2981 | "symfony/error-handler": "^5.4|^6.0",
2982 | "symfony/http-client": "^5.4|^6.0",
2983 | "symfony/intl": "^6.2",
2984 | "symfony/translation-contracts": "^2.0|^3.0",
2985 | "symfony/var-exporter": "^5.4|^6.0"
2986 | },
2987 | "type": "library",
2988 | "autoload": {
2989 | "files": [
2990 | "Resources/functions.php"
2991 | ],
2992 | "psr-4": {
2993 | "Symfony\\Component\\String\\": ""
2994 | },
2995 | "exclude-from-classmap": [
2996 | "/Tests/"
2997 | ]
2998 | },
2999 | "notification-url": "https://packagist.org/downloads/",
3000 | "license": [
3001 | "MIT"
3002 | ],
3003 | "authors": [
3004 | {
3005 | "name": "Nicolas Grekas",
3006 | "email": "p@tchwork.com"
3007 | },
3008 | {
3009 | "name": "Symfony Community",
3010 | "homepage": "https://symfony.com/contributors"
3011 | }
3012 | ],
3013 | "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way",
3014 | "homepage": "https://symfony.com",
3015 | "keywords": [
3016 | "grapheme",
3017 | "i18n",
3018 | "string",
3019 | "unicode",
3020 | "utf-8",
3021 | "utf8"
3022 | ],
3023 | "support": {
3024 | "source": "https://github.com/symfony/string/tree/v6.2.2"
3025 | },
3026 | "funding": [
3027 | {
3028 | "url": "https://symfony.com/sponsor",
3029 | "type": "custom"
3030 | },
3031 | {
3032 | "url": "https://github.com/fabpot",
3033 | "type": "github"
3034 | },
3035 | {
3036 | "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
3037 | "type": "tidelift"
3038 | }
3039 | ],
3040 | "time": "2022-12-14T16:11:27+00:00"
3041 | }
3042 | ],
3043 | "aliases": [],
3044 | "minimum-stability": "stable",
3045 | "stability-flags": [],
3046 | "prefer-stable": false,
3047 | "prefer-lowest": false,
3048 | "platform": {
3049 | "php": ">=7.4",
3050 | "composer-plugin-api": "^1.0 || ^2.0"
3051 | },
3052 | "platform-dev": [],
3053 | "plugin-api-version": "2.3.0"
3054 | }
3055 |
--------------------------------------------------------------------------------