From 218d5171964de6ea2a61539114428c491df0bd6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Niedzielski?= Date: Tue, 23 Apr 2024 13:21:13 +0200 Subject: [PATCH] IBX-8119: Upgraded minimum PHP version to 8.3 --- .github/workflows/ci.yaml | 58 +++++++--------- .github/workflows/gha-docker-solr.yaml | 7 +- composer.json | 93 +++++++++++++------------- 3 files changed, 75 insertions(+), 83 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 3d110a576e..b97487dc91 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -10,13 +10,13 @@ on: jobs: cs-fix: name: Run code style check - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" strategy: matrix: php: - - '8.0' + - '8.3' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup PHP Action uses: shivammathur/setup-php@v2 @@ -26,28 +26,26 @@ jobs: extensions: 'pdo_sqlite, gd' tools: cs2pr - - uses: "ramsey/composer-install@v1" + - uses: ramsey/composer-install@v3 with: - dependency-versions: "highest" + dependency-versions: highest - name: Run code style check run: composer run-script check-cs -- --format=checkstyle | cs2pr tests: name: Unit tests & SQLite integration tests - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" timeout-minutes: 15 strategy: fail-fast: false matrix: php: - - '7.4' - - '8.0' - - '8.1' + - '8.3' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup PHP Action uses: shivammathur/setup-php@v2 @@ -57,9 +55,9 @@ jobs: extensions: pdo_sqlite, gd tools: cs2pr - - uses: "ramsey/composer-install@v1" + - uses: ramsey/composer-install@v3 with: - dependency-versions: "highest" + dependency-versions: highest - name: Setup problem matchers for PHPUnit run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" @@ -90,19 +88,17 @@ jobs: --health-timeout 5s --health-retries 5 --tmpfs /var/lib/postgres - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" timeout-minutes: 60 strategy: fail-fast: false matrix: php: - - '7.4' - - '8.0' - - '8.1' + - '8.3' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup PHP Action uses: shivammathur/setup-php@v2 @@ -112,9 +108,9 @@ jobs: extensions: pdo_pgsql, gd tools: cs2pr - - uses: "ramsey/composer-install@v1" + - uses: ramsey/composer-install@v3 with: - dependency-versions: "highest" + dependency-versions: highest - name: Setup problem matchers for PHPUnit run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" @@ -145,19 +141,17 @@ jobs: --health-timeout=5s --health-retries=5 --tmpfs=/var/lib/mysql - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" timeout-minutes: 60 strategy: fail-fast: false matrix: php: - - '7.4' - - '8.0' - - '8.1' + - '8.3' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup PHP Action uses: shivammathur/setup-php@v2 @@ -167,9 +161,9 @@ jobs: extensions: pdo_mysql, gd, redis tools: cs2pr - - uses: "ramsey/composer-install@v1" + - uses: ramsey/composer-install@v3 with: - dependency-versions: "highest" + dependency-versions: highest - name: Setup problem matchers for PHPUnit run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" @@ -182,7 +176,7 @@ jobs: solr-integration: name: "Solr integration tests" - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" timeout-minutes: 30 permissions: packages: read @@ -207,11 +201,9 @@ jobs: fail-fast: false matrix: php: - - '7.4' - - '8.0' - - '8.1' + - '8.3' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: fetch-depth: 0 @@ -226,9 +218,9 @@ jobs: VERSION=$(jq -r '.extra | ."branch-alias" | ."dev-main"' < composer.json) composer require --no-update "ibexa/solr:$VERSION" - - uses: "ramsey/composer-install@v1" + - uses: ramsey/composer-install@v3 with: - dependency-versions: "highest" + dependency-versions: highest - name: Run integration test suite run: composer test-integration-solr diff --git a/.github/workflows/gha-docker-solr.yaml b/.github/workflows/gha-docker-solr.yaml index f32cb9525f..2d49d29290 100644 --- a/.github/workflows/gha-docker-solr.yaml +++ b/.github/workflows/gha-docker-solr.yaml @@ -15,7 +15,7 @@ env: jobs: build-and-publish: - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" permissions: packages: write services: @@ -50,9 +50,9 @@ jobs: VERSION=$(jq -r '.extra | ."branch-alias" | ."dev-main"' < composer.json) composer require --no-update "ibexa/solr:$VERSION" - - uses: "ramsey/composer-install@v2" + - uses: ramsey/composer-install@v3 with: - dependency-versions: "highest" + dependency-versions: highest - name: Run integration test suite run: composer test-integration-solr @@ -71,4 +71,3 @@ jobs: - name: Push image run: docker push "$IMAGE_NAME" - diff --git a/composer.json b/composer.json index b0dc4324d3..9a73ae54e5 100644 --- a/composer.json +++ b/composer.json @@ -7,82 +7,82 @@ "php-64bit": "For support of more than 30 languages, a 64bit php installation on all involved prod/dev machines is required" }, "require": { - "php": "^7.4 || ^8.0", + "php": " >=8.3", + "ext-PDO": "*", + "ext-SPL": "*", "ext-ctype": "*", + "ext-curl": "*", + "ext-dom": "*", "ext-fileinfo": "*", "ext-intl": "*", "ext-json": "*", "ext-mbstring": "*", - "ext-PDO": "*", - "ext-SPL": "*", "ext-xsl": "*", - "ext-curl": "*", - "ext-dom": "*", + "composer/package-versions-deprecated": "^1.11", + "doctrine/dbal": "^2.13.0", + "doctrine/doctrine-bundle": "^2.0", + "doctrine/orm": "^2.7", + "friendsofphp/proxy-manager-lts": "^1.0", + "friendsofsymfony/http-cache-bundle": "^2.8", + "friendsofsymfony/jsrouting-bundle": "^2.5", + "guzzlehttp/guzzle": "^6.5", + "ibexa/doctrine-schema": "~5.0.x-dev", + "jms/translation-bundle": "^1.5", + "league/flysystem-memory": "^2.0.6", + "liip/imagine-bundle": "^2.3", + "nelmio/cors-bundle": "^2.0", + "oneup/flysystem-bundle": "^4.4.2", + "pagerfanta/pagerfanta": "^2.1", + "php-http/guzzle6-adapter": "^2.0", + "psr/event-dispatcher": "^1.0", + "sensio/framework-extra-bundle": "^6.1", + "symfony-cmf/routing": "^2.3", "symfony/cache": "^5.3.0", - "symfony/http-foundation": "^5.3.0", - "symfony/framework-bundle": "^5.3.0", - "symfony/process": "^5.3.0", + "symfony/console": "^5.3.0", "symfony/dependency-injection": "^5.3.0", "symfony/event-dispatcher": "^5.3.0", + "symfony/expression-language": "^5.3.0", + "symfony/framework-bundle": "^5.3.0", + "symfony/http-client": "^5.3.0", + "symfony/http-foundation": "^5.3.0", + "symfony/http-kernel": "^5.3.0", "symfony/mime": "^5.3.0", - "symfony/translation": "^5.3.0", - "symfony/yaml": "^5.3.0", "symfony/polyfill-php80": "^1.27", + "symfony/process": "^5.3.0", + "symfony/security-bundle": "^5.3.0", "symfony/security-core": "^5.3.0", "symfony/security-http": "^5.3.0", - "symfony/security-bundle": "^5.3.0", "symfony/serializer": "^5.3.0", - "symfony/http-client": "^5.3.0", - "symfony/http-kernel": "^5.3.0", - "symfony/console": "^5.3.0", - "symfony/expression-language": "^5.3.0", + "symfony/templating": "^5.3.0", + "symfony/translation": "^5.3.0", "symfony/validator": "^5.3.0", "symfony/var-dumper": "^5.3.0", - "ibexa/doctrine-schema": "~5.0.0@dev", - "symfony-cmf/routing": "^2.3", - "guzzlehttp/guzzle": "^6.5", - "php-http/guzzle6-adapter": "^2.0", - "nelmio/cors-bundle": "^2.0", - "pagerfanta/pagerfanta": "^2.1", - "doctrine/dbal": "^2.13.0", - "doctrine/orm": "^2.7", - "doctrine/doctrine-bundle": "^2.0", - "liip/imagine-bundle": "^2.3", - "oneup/flysystem-bundle": "^4.4.2", - "league/flysystem-memory": "^2.0.6", - "friendsofsymfony/http-cache-bundle": "^2.8", - "sensio/framework-extra-bundle": "^6.1", - "jms/translation-bundle": "^1.5", - "twig/twig": "^3.0", + "symfony/yaml": "^5.3.0", "twig/extra-bundle": "^3.0", - "friendsofsymfony/jsrouting-bundle": "^2.5", - "friendsofphp/proxy-manager-lts": "^1.0", - "psr/event-dispatcher": "^1.0", - "symfony/templating": "^5.3.0", - "composer/package-versions-deprecated": "^1.11" + "twig/twig": "^3.0" }, "require-dev": { "behat/behat": "^3.6.1", - "jenner/simple_fork": "^1.2", "friends-of-behat/mink-extension": "^2.4", "ibexa/ci-scripts": "^0.2@dev", "ibexa/code-style": "^1.0", - "phpunit/phpunit": "^8.2", + "jenner/simple_fork": "^1.2", "matthiasnoback/symfony-dependency-injection-test": "^4.1", - "symfony/phpunit-bridge": "^5.1", - "symfony/proxy-manager-bridge": "^5.3", - "symfony/runtime": "^5.3.0", "phpstan/phpstan": "^1.2", + "phpstan/phpstan-phpunit": "^1.3", "phpstan/phpstan-symfony": "^1.3", - "phpstan/phpstan-phpunit": "^1.3" + "phpunit/phpunit": "^8.2", + "symfony/phpunit-bridge": "^5.1", + "symfony/proxy-manager-bridge": "^5.3", + "symfony/runtime": "^5.3.0" }, "conflict": { - "friendsofphp/php-cs-fixer": "3.5.0", - "symfony/dependency-injection": "5.3.7", - "symfony/security-core": "5.3.0", "doctrine/dbal": "2.7.0", "ezsystems/ezpublish-legacy": "*", - "phpunit/phpunit": "8.4.0" + "friendsofphp/php-cs-fixer": "3.5.0", + "phpunit/phpunit": "8.4.0", + "symfony/dependency-injection": "5.3.7", + "symfony/security-core": "5.3.0" }, "replace": { "ezsystems/ezplatform-kernel": "*" @@ -131,6 +131,7 @@ }, "config": { "process-timeout": 3000, + "sort-packages": true, "allow-plugins": { "composer/package-versions-deprecated": true, "*": false