From b9b4a56a970dca92917ea2b2d4cac19451439b48 Mon Sep 17 00:00:00 2001 From: DKravtsov Date: Sun, 12 Jan 2025 18:38:43 +0200 Subject: [PATCH 1/4] php 8.4 & xdebug 3.4.0, mysql 8.4.3, phpcpd 8.0.0, updated composer dependencies. --- .circleci/config.yml | 5 + .env.dev | 6 +- .env.prod | 4 +- .env.staging | 4 +- .env.test | 6 +- .env.test-ci | 6 +- .github/workflows/ci.yml | 2 + .gitlab-ci.yml | 1 + .idea/PMDPlugin.xml | 6 + .idea/blade.xml | 119 +++ .idea/htdocs.iml | 20 +- .idea/laravel-idea.xml | 17 + .idea/php.xml | 654 ++++++------ Dockerfile | 8 +- Makefile | 9 +- app/Models/User.php | 10 - bitbucket-pipelines.yml | 1 + composer.json | 6 +- composer.lock | 1409 ++++++++++++++------------ docker/dev/php.ini | 151 +-- docker/prod/php.ini | 153 +-- docker/staging/php.ini | 153 +-- docker/test/php.ini | 153 +-- docs/commands.md | 3 +- phpcpd.phar | Bin 131527 -> 133397 bytes phpstan.neon.dist | 1 - phpunit.xml | 20 +- qodana.yaml | 2 +- readme.md | 5 +- rector.php | 2 +- tests/Unit/ExampleTest.php | 2 +- tools/01_phpunit/composer.json | 6 +- tools/01_phpunit/composer.lock | 275 +++-- tools/02_phpstan/composer.json | 6 +- tools/02_phpstan/composer.lock | 961 +++++++++++------- tools/03_ecs/composer.json | 10 +- tools/03_ecs/composer.lock | 413 ++++---- tools/04_php-coveralls/composer.json | 4 +- tools/04_php-coveralls/composer.lock | 240 +++-- tools/05_phpinsights/composer.json | 6 +- tools/05_phpinsights/composer.lock | 593 +++++------ tools/06_phpmd/composer.json | 4 +- tools/06_phpmd/composer.lock | 229 +++-- tools/07_phpmetrics/composer.json | 4 +- tools/07_phpmetrics/composer.lock | 111 +- tools/08_rector/composer.json | 8 +- tools/08_rector/composer.lock | 153 +-- tools/09_composer/composer.json | 8 +- tools/09_composer/composer.lock | 815 +++++++++------ 49 files changed, 3651 insertions(+), 3133 deletions(-) create mode 100644 .idea/PMDPlugin.xml create mode 100644 .idea/blade.xml create mode 100644 .idea/laravel-idea.xml diff --git a/.circleci/config.yml b/.circleci/config.yml index 6848f8b..552c449 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -37,6 +37,11 @@ jobs: command: | make report-code-coverage + - run: + name: Checks for security vulnerability advisories for installed packages + command: | + make composer-audit + - run: name: Check coding standard & CodeSniffer command: | diff --git a/.env.dev b/.env.dev index 795c95d..0c2c412 100644 --- a/.env.dev +++ b/.env.dev @@ -7,12 +7,12 @@ WEB_PORT_SSL=443 # XDEBUG_CONFIG possible values: main|osx. Use main value for Linux and Windows, osx value for MacOS. XDEBUG_CONFIG=main # Sometimes we need to use different xdebug versions, list of versions can be found here - https://pecl.php.net/package/xdebug -XDEBUG_VERSION=3.3.2 +XDEBUG_VERSION=3.4.0 ###< XDebug docker configuration ### ###> MySQL docker configuration. ### -# MySQL version, recommend values: 9.1.0|9.0.1|8.4.2|8.3.0|8.2.0|8.1.0|8.0.39 -MYSQL_VERSION=8.4.2 +# MySQL version, recommend values: 9.1.0|9.0.1|8.4.3|8.3.0|8.2.0|8.1.0|8.0.39 +MYSQL_VERSION=8.4.3 # MySQL INNODB_USE_NATIVE_AIO possible values: 1|0. Set to 0 when AIO interface is not supported on OSX. https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_use_native_aio INNODB_USE_NATIVE_AIO=1 # Sometimes AWS MySQL RDS has SQL_MODE="NO_ENGINE_SUBSTITUTION" (https://github.com/awsdocs/amazon-rds-user-guide/issues/160) but MySQL default described here - https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_sql_mode diff --git a/.env.prod b/.env.prod index d43f810..4079cc0 100644 --- a/.env.prod +++ b/.env.prod @@ -4,8 +4,8 @@ WEB_PORT_SSL=443 ###< Nginx docker configuration ### ###> MySQL docker configuration. ### -# MySQL version, recommend values: 9.1.0|9.0.1|8.4.2|8.3.0|8.2.0|8.1.0|8.0.39 -MYSQL_VERSION=8.4.2 +# MySQL version, recommend values: 9.1.0|9.0.1|8.4.3|8.3.0|8.2.0|8.1.0|8.0.39 +MYSQL_VERSION=8.4.3 # MySQL INNODB_USE_NATIVE_AIO possible values: 1|0. Set to 0 when AIO interface is not supported on OSX. https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_use_native_aio INNODB_USE_NATIVE_AIO=1 # Sometimes AWS MySQL RDS has SQL_MODE="NO_ENGINE_SUBSTITUTION" (https://github.com/awsdocs/amazon-rds-user-guide/issues/160) but MySQL default described here - https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_sql_mode diff --git a/.env.staging b/.env.staging index fb6c2c7..8c63b10 100644 --- a/.env.staging +++ b/.env.staging @@ -4,8 +4,8 @@ WEB_PORT_SSL=443 ###< Nginx docker configuration ### ###> MySQL docker configuration. ### -# MySQL version, recommend values: 9.1.0|9.0.1|8.4.2|8.3.0|8.2.0|8.1.0|8.0.39 -MYSQL_VERSION=8.4.2 +# MySQL version, recommend values: 9.1.0|9.0.1|8.4.3|8.3.0|8.2.0|8.1.0|8.0.39 +MYSQL_VERSION=8.4.3 # MySQL INNODB_USE_NATIVE_AIO possible values: 1|0. Set to 0 when AIO interface is not supported on OSX. https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_use_native_aio INNODB_USE_NATIVE_AIO=1 # Sometimes AWS MySQL RDS has SQL_MODE="NO_ENGINE_SUBSTITUTION" (https://github.com/awsdocs/amazon-rds-user-guide/issues/160) but MySQL default described here - https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_sql_mode diff --git a/.env.test b/.env.test index 8b13a51..4a7f6b7 100644 --- a/.env.test +++ b/.env.test @@ -7,12 +7,12 @@ WEB_PORT_SSL=443 # XDEBUG_CONFIG possible values: main|osx. Use main value for Linux and Windows, osx value for MacOS. XDEBUG_CONFIG=main # Sometimes we need to use different xdebug versions, list of versions can be found here - https://pecl.php.net/package/xdebug -XDEBUG_VERSION=3.3.2 +XDEBUG_VERSION=3.4.0 ###< XDebug docker configuration ### ###> MySQL docker configuration. ### -# MySQL version, recommend values: 9.1.0|9.0.1|8.4.2|8.3.0|8.2.0|8.1.0|8.0.39 -MYSQL_VERSION=8.4.2 +# MySQL version, recommend values: 9.1.0|9.0.1|8.4.3|8.3.0|8.2.0|8.1.0|8.0.39 +MYSQL_VERSION=8.4.3 # MySQL INNODB_USE_NATIVE_AIO possible values: 1|0. Set to 0 when AIO interface is not supported on OSX. https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_use_native_aio INNODB_USE_NATIVE_AIO=1 # Sometimes AWS MySQL RDS has SQL_MODE="NO_ENGINE_SUBSTITUTION" (https://github.com/awsdocs/amazon-rds-user-guide/issues/160) but MySQL default described here - https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_sql_mode diff --git a/.env.test-ci b/.env.test-ci index e5ba85c..eabcfa8 100644 --- a/.env.test-ci +++ b/.env.test-ci @@ -9,12 +9,12 @@ WEB_PORT_SSL=443 # XDEBUG_CONFIG possible values: main|osx. Use main value for Linux and Windows, osx value for MacOS. XDEBUG_CONFIG=main # Sometimes we need to use different xdebug versions, list of versions can be found here - https://pecl.php.net/package/xdebug -XDEBUG_VERSION=3.3.2 +XDEBUG_VERSION=3.4.0 ###< XDebug docker configuration ### ###> MySQL docker configuration. ### -# MySQL version, recommend values: 9.1.0|9.0.1|8.4.2|8.3.0|8.2.0|8.1.0|8.0.39 -MYSQL_VERSION=8.4.2 +# MySQL version, recommend values: 9.1.0|9.0.1|8.4.3|8.3.0|8.2.0|8.1.0|8.0.39 +MYSQL_VERSION=8.4.3 # MySQL INNODB_USE_NATIVE_AIO possible values: 1|0. Set to 0 when AIO interface is not supported on OSX. https://dev.mysql.com/doc/refman/8.0/en/innodb-parameters.html#sysvar_innodb_use_native_aio INNODB_USE_NATIVE_AIO=1 # Sometimes AWS MySQL RDS has SQL_MODE="NO_ENGINE_SUBSTITUTION" (https://github.com/awsdocs/amazon-rds-user-guide/issues/160) but MySQL default described here - https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_sql_mode diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f1c79dc..2631cd4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,6 +38,8 @@ jobs: with: name: php-coverage-data path: reports/clover.xml + - name: Checks for security vulnerability advisories for installed packages + run: make composer-audit - name: Run coding standard run: make ecs - name: Run codeSniffer diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8eb649e..b368b6e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -31,6 +31,7 @@ build: - make seed - *general_scripts - make phpunit + - make composer-audit - make ecs - make phpcs - make phpstan diff --git a/.idea/PMDPlugin.xml b/.idea/PMDPlugin.xml new file mode 100644 index 0000000..dcf7824 --- /dev/null +++ b/.idea/PMDPlugin.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/.idea/blade.xml b/.idea/blade.xml new file mode 100644 index 0000000..3035856 --- /dev/null +++ b/.idea/blade.xml @@ -0,0 +1,119 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/htdocs.iml b/.idea/htdocs.iml index 2a8987b..65690e1 100644 --- a/.idea/htdocs.iml +++ b/.idea/htdocs.iml @@ -15,9 +15,14 @@ - + + + + + + @@ -67,8 +72,6 @@ - - @@ -100,7 +103,6 @@ - @@ -357,7 +359,6 @@ - @@ -403,6 +404,15 @@ + + + + + + + + + diff --git a/.idea/laravel-idea.xml b/.idea/laravel-idea.xml new file mode 100644 index 0000000..f0b52ac --- /dev/null +++ b/.idea/laravel-idea.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/.idea/php.xml b/.idea/php.xml index ae1be60..9ffe1cd 100644 --- a/.idea/php.xml +++ b/.idea/php.xml @@ -6,12 +6,16 @@