Skip to content

Commit 95bf1c6

Browse files
author
DKravtsov
committed
updated to php 8 and symfony 5
1 parent 6ca130d commit 95bf1c6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+4570
-2889
lines changed

.dockerignore

+7-1
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,23 @@
1+
### User-specific stuff:
12
/.git*
23
/.idea*
34
.dockerignore
45
.editorconfig
56

7+
###> symfony/framework-bundle ###
68
/.env.local
79
/.env.*.local
8-
.env.local.php
10+
/.env.local.php
911
/public/bundles/
1012
/var/mysql-data
1113
/var/rabbitmq
1214
/vendor/
15+
###< symfony/framework-bundle ###
16+
17+
### Vendor bin dependencies
1318
/tools/*/vendor/
1419

20+
### Docker
1521
Dockerfile
1622
docker-compose.yml
1723
docker-compose-test-ci.yml

.env

+6
Original file line numberDiff line numberDiff line change
@@ -40,3 +40,9 @@ MAILER_DSN=smtp://user:[email protected]
4040
###> symfony/messenger ###
4141
MESSENGER_TRANSPORT_DSN=amqp://guest:guest@rabbitmq:5672/%2f/messages
4242
###< symfony/messenger ###
43+
44+
###> symfony/lock ###
45+
# Choose one of the stores below
46+
# postgresql+advisory://db_user:db_password@localhost/db_name
47+
LOCK_DSN=semaphore
48+
###< symfony/lock ###

.php-cs-fixer.dist.php

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<?php
22

3+
declare(strict_types=1);
4+
35
// https://mlocati.github.io/php-cs-fixer-configurator/
46
$finder = PhpCsFixer\Finder::create()->in(__DIR__)->exclude('somedir');
57

@@ -17,16 +19,16 @@
1719
'blank_line_before_statement' => ['statements' => ['continue', 'declare', 'return', 'throw', 'try']],
1820
'single_blank_line_before_namespace' => true,
1921
'blank_line_after_namespace' => true,
20-
'blank_line_after_opening_tag' => true,
2122

2223
// skip list (see ecs.php)
2324
'no_multiline_whitespace_around_double_arrow' => false,
2425
'phpdoc_no_package' => false,
2526
'phpdoc_summary' => false,
2627
'phpdoc_separation' => false,
28+
'blank_line_after_opening_tag' => false,
2729
'class_attributes_separation' => false,
2830
'no_blank_lines_before_namespace' => false,
2931
'not_operator_with_successor_space' => false,
3032
'single_line_throw' => false,
31-
33+
'blank_line_after_strict_types' => false,
3234
])->setFinder($finder);

Dockerfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM php:7.4-fpm
1+
FROM php:8.0-fpm
22

33
# set main params
44
ARG BUILD_ARGUMENT_DEBUG_ENABLED=false
@@ -37,7 +37,7 @@ RUN apt-get update && apt-get upgrade -y && apt-get install -y \
3737
libzip-dev \
3838
wget \
3939
librabbitmq-dev \
40-
&& pecl install amqp \
40+
&& pecl install amqp-1.11.0beta \
4141
&& docker-php-ext-configure pdo_mysql --with-pdo-mysql=mysqlnd \
4242
&& docker-php-ext-configure intl \
4343
&& docker-php-ext-install \

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ phpcpd:
190190

191191
###> php mess detector ###
192192
phpmd:
193-
@make exec cmd="php ./vendor/bin/phpmd src text phpmd_ruleset.xml --suffixes php --exclude *src/Migrations/*"
193+
@make exec cmd="php ./vendor/bin/phpmd src text phpmd_ruleset.xml --suffixes php"
194194
###< php mess detector ###
195195

196196
###> PHPStan static analysis tool ###

bin/console

+9-37
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,19 @@
11
#!/usr/bin/env php
22
<?php
3-
declare(strict_types = 1);
3+
4+
declare(strict_types=1);
45

56
use App\Kernel;
67
use Symfony\Bundle\FrameworkBundle\Console\Application;
7-
use Symfony\Component\Console\Input\ArgvInput;
8-
use Symfony\Component\Dotenv\Dotenv;
9-
use Symfony\Component\ErrorHandler\Debug;
10-
11-
set_time_limit(0);
128

13-
if (!in_array(PHP_SAPI, ['cli', 'phpdbg', 'embed'], true)) {
14-
echo 'Warning: The console should be invoked via the CLI version of PHP, not the ' . PHP_SAPI . ' SAPI' . PHP_EOL;
9+
if (!is_file(dirname(__DIR__) . '/vendor/autoload_runtime.php')) {
10+
throw new LogicException('Symfony Runtime is missing. Try running "composer require symfony/runtime".');
1511
}
1612

17-
require dirname(__DIR__) . '/vendor/autoload.php';
18-
19-
if (!class_exists(Application::class) || !class_exists(Dotenv::class)) {
20-
throw new LogicException('You need to add "symfony/framework-bundle" and "symfony/dotenv" as Composer dependencies.');
21-
}
22-
23-
$input = new ArgvInput();
24-
$env = $input->getParameterOption(['--env', '-e'], null, true);
25-
26-
if ($env) {
27-
putenv('APP_ENV=' . $_SERVER['APP_ENV'] = $_ENV['APP_ENV'] = $env);
28-
}
29-
30-
if ($input->hasParameterOption('--no-debug', true)) {
31-
putenv('APP_DEBUG=' . $_SERVER['APP_DEBUG'] = $_ENV['APP_DEBUG'] = '0');
32-
}
33-
34-
require dirname(__DIR__) . '/config/bootstrap.php';
35-
36-
if ($_SERVER['APP_DEBUG']) {
37-
umask(0000);
38-
39-
if (class_exists(Debug::class)) {
40-
Debug::enable();
41-
}
42-
}
13+
require_once dirname(__DIR__) . '/vendor/autoload_runtime.php';
4314

44-
$kernel = new Kernel($_SERVER['APP_ENV'], (bool)$_SERVER['APP_DEBUG']);
15+
return static function (array $context): Application {
16+
$kernel = new Kernel($context['APP_ENV'], (bool)$context['APP_DEBUG']);
4517

46-
/** @noinspection PhpUnhandledExceptionInspection */
47-
(new Application($kernel))->run($input);
18+
return new Application($kernel);
19+
};

composer.json

+63-43
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
"RabbitMQ"
1313
],
1414
"homepage": "https://github.com/dimadeush/docker-nginx-php-symfony",
15-
"version": "1.0.0",
16-
"license": "proprietary",
15+
"version": "0.0.0",
16+
"license": "MIT",
1717
"authors": [
1818
{
1919
"name": "Dmitriy Kravtsov",
@@ -23,59 +23,73 @@
2323
}
2424
],
2525
"require": {
26-
"php": "^7.4.0",
26+
"php": "^8.0.0",
2727
"ext-amqp": "*",
2828
"ext-ctype": "*",
2929
"ext-iconv": "*",
3030
"ext-json": "*",
3131
"ext-mbstring": "*",
3232
"ext-pdo": "*",
3333
"ext-pdo_mysql": "*",
34+
"doctrine/annotations": "^1.13",
35+
"doctrine/doctrine-bundle": "^2.4",
3436
"doctrine/doctrine-migrations-bundle": "^3.1",
35-
"systemsdk/easy-log-bundle": "1.10.*",
36-
"jmose/command-scheduler-bundle": "^3.0",
37+
"doctrine/orm": "^2.9",
38+
"dukecity/command-scheduler-bundle": "^4.0",
3739
"sensio/framework-extra-bundle": "^6.1",
38-
"symfony/asset": "4.4.*",
39-
"symfony/config": "4.4.*",
40-
"symfony/console": "4.4.*",
41-
"symfony/dotenv": "4.4.*",
42-
"symfony/expression-language": "4.4.*",
43-
"symfony/flex": "^1.12",
44-
"symfony/form": "4.4.*",
45-
"symfony/framework-bundle": "4.4.*",
46-
"symfony/http-client": "4.4.*",
47-
"symfony/intl": "4.4.*",
48-
"symfony/mailer": "4.4.*",
49-
"symfony/messenger": "4.4.*",
40+
"symfony/asset": "5.3.*",
41+
"symfony/config": "5.3.*",
42+
"symfony/console": "5.3.*",
43+
"symfony/dotenv": "5.3.*",
44+
"symfony/expression-language": "5.3.*",
45+
"symfony/flex": "^1.13",
46+
"symfony/form": "5.3.*",
47+
"symfony/framework-bundle": "5.3.*",
48+
"symfony/http-client": "5.3.*",
49+
"symfony/intl": "5.3.*",
50+
"symfony/mailer": "5.3.*",
51+
"symfony/messenger": "5.3.*",
52+
"symfony/mime": "5.3.*",
5053
"symfony/monolog-bundle": "^3.7",
51-
"symfony/orm-pack": "*",
52-
"symfony/process": "4.4.*",
53-
"symfony/routing": "4.4.*",
54-
"symfony/security-bundle": "4.4.*",
55-
"symfony/serializer-pack": "*",
56-
"symfony/translation": "4.4.*",
57-
"symfony/twig-bundle": "4.4.*",
58-
"symfony/validator": "4.4.*",
59-
"symfony/web-link": "4.4.*",
60-
"symfony/yaml": "4.4.*"
54+
"symfony/notifier": "5.3.*",
55+
"symfony/process": "5.3.*",
56+
"symfony/property-access": "5.3.*",
57+
"symfony/property-info": "5.3.*",
58+
"symfony/proxy-manager-bridge": "5.3.*",
59+
"symfony/runtime": "5.3.*",
60+
"symfony/routing": "5.3.*",
61+
"symfony/security-bundle": "5.3.*",
62+
"symfony/serializer": "5.3.*",
63+
"symfony/translation": "5.3.*",
64+
"symfony/twig-bundle": "5.3.*",
65+
"symfony/validator": "5.3.*",
66+
"symfony/web-link": "5.3.*",
67+
"symfony/yaml": "5.3.*",
68+
"twig/extra-bundle": "^2.12|^3.0",
69+
"twig/twig": "^2.12|^3.0"
6170
},
6271
"conflict": {
63-
"symfony/symfony": "*"
72+
"symfony/debug": "<3.3",
73+
"symfony/symfony": "*",
74+
"symfony/twig-bundle": "<3.3"
6475
},
6576
"require-dev": {
6677
"bamarni/composer-bin-plugin": "^1.4",
6778
"doctrine/doctrine-fixtures-bundle": "^3.4",
68-
"ergebnis/composer-normalize": "^2.13",
79+
"systemsdk/easy-log-bundle": "1.10.*",
80+
"ergebnis/composer-normalize": "^2.15",
6981
"roave/security-advisories": "dev-latest",
70-
"symfony/debug-bundle": "4.4.*",
71-
"symfony/maker-bundle": "^1.31",
82+
"symfony/browser-kit": "5.3.*",
83+
"symfony/debug-bundle": "5.3.*",
84+
"symfony/maker-bundle": "^1.33",
7285
"symfony/requirements-checker": "^2.0",
73-
"symfony/var-dumper": "4.4.*",
74-
"symfony/web-profiler-bundle": "4.4.*"
86+
"symfony/stopwatch": "5.3.*",
87+
"symfony/var-dumper": "5.3.*",
88+
"symfony/web-profiler-bundle": "5.3.*"
7589
},
7690
"config": {
7791
"platform": {
78-
"php": "7.4.0"
92+
"php": "8.0.0"
7993
},
8094
"preferred-install": {
8195
"*": "dist"
@@ -87,26 +101,29 @@
87101
"target-directory": "tools"
88102
},
89103
"symfony": {
90-
"allow-contrib": true,
91-
"require": "4.4.*"
104+
"allow-contrib": true
92105
}
93106
},
94107
"autoload": {
95108
"psr-4": {
96109
"App\\": "src/"
97-
}
110+
},
111+
"classmap": [],
112+
"exclude-from-classmap": []
98113
},
99114
"autoload-dev": {
100115
"psr-4": {
101116
"App\\Tests\\": "tests/",
102117
"PHPUnit\\": "tools/01_phpunit/vendor/phpunit/phpunit/src",
103-
"Symfony\\Component\\BrowserKit\\": "tools/01_phpunit/vendor/symfony/browser-kit",
104118
"Symfony\\Bridge\\PhpUnit\\": "tools/01_phpunit/vendor/symfony/phpunit-bridge",
105119
"PHPMD\\": "tools/06_phpmd/vendor/phpmd/phpmd/src/bin",
106-
"PhpCsFixer\\": "tools/03_ecs/vendor/friendsofphp/php-cs-fixer/src",
107-
"SlevomatCodingStandard\\": "tools/03_ecs/vendor/slevomat/coding-standard/SlevomatCodingStandard",
108-
"Symplify\\CodingStandard\\": "tools/03_ecs/vendor/symplify/coding-standard/src",
120+
"PhpCsFixer\\": "tools/03_ecs/vendor/symplify/easy-coding-standard/vendor/friendsofphp/php-cs-fixer/src",
121+
"Symplify\\CodingStandard\\": "tools/03_ecs/vendor/symplify/easy-coding-standard/vendor/symplify/coding-standard/src",
122+
"Symplify\\RuleDocGenerator\\": "tools/03_ecs/vendor/symplify/easy-coding-standard/vendor/symplify/rule-doc-generator-contracts/src",
123+
"PHPStan\\PhpDoc\\PHPUnit\\": "tools/02_phpstan/vendor/phpstan/phpstan-phpunit/src/PhpDoc/PHPUnit",
124+
"PHPStan\\Rules\\PHPUnit\\": "tools/02_phpstan/vendor/phpstan/phpstan-phpunit/src/Rules/PHPUnit",
109125
"PHPStan\\Symfony\\": "tools/02_phpstan/vendor/phpstan/phpstan-symfony/src/Symfony",
126+
"PHPStan\\Type\\PHPUnit\\": "tools/02_phpstan/vendor/phpstan/phpstan-phpunit/src/Type/PHPUnit",
110127
"PHPStan\\Type\\Symfony\\": "tools/02_phpstan/vendor/phpstan/phpstan-symfony/src/Type/Symfony"
111128
}
112129
},
@@ -116,17 +133,20 @@
116133
"if test -d vendor/symfony/requirements-checker; then ./vendor/bin/requirements-checker; fi",
117134
"if test -d vendor/bamarni/composer-bin-plugin; then composer bin all install; fi",
118135
"if which local-php-security-checker; then local-php-security-checker --update-cache && local-php-security-checker; fi",
119-
"@auto-scripts"
136+
"@auto-scripts",
137+
"@composer dump-autoload"
120138
],
121139
"post-update-cmd": [
122140
"if test -d vendor/symfony/requirements-checker; then ./vendor/bin/requirements-checker; fi",
123141
"if test -d vendor/bamarni/composer-bin-plugin; then composer bin all update; fi",
124142
"if which local-php-security-checker; then local-php-security-checker --update-cache && local-php-security-checker; fi",
125-
"@auto-scripts"
143+
"@auto-scripts",
144+
"@composer dump-autoload"
126145
],
127146
"auto-scripts": {
128147
"cache:clear": "symfony-cmd",
129148
"cache:warmup": "symfony-cmd",
149+
"assets:install --symlink --relative %PUBLIC_DIR%": "symfony-cmd",
130150
"assets:install %PUBLIC_DIR%": "symfony-cmd"
131151
}
132152
},

0 commit comments

Comments
 (0)