Add support for PHP 8.3

This commit is contained in:
Alejandro Celaya 2023-11-04 12:42:31 +01:00
parent 2a782ab60b
commit 2cb8486bb3
10 changed files with 30 additions and 24 deletions

View file

@ -43,5 +43,5 @@ runs:
ini-values: pcov.directory=module ini-values: pcov.directory=module
- name: Install dependencies - name: Install dependencies
if: ${{ inputs.install-deps == 'yes' }} if: ${{ inputs.install-deps == 'yes' }}
run: composer install --no-interaction --prefer-dist run: composer install --no-interaction --prefer-dist ${{ inputs.php-version == '8.3' && '--ignore-platform-req=php' || '' }}
shell: bash shell: bash

View file

@ -13,11 +13,12 @@ jobs:
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
strategy: strategy:
matrix: matrix:
php-version: ['8.2'] php-version: ['8.2', '8.3']
continue-on-error: ${{ matrix.php-version == '8.3' }}
env: env:
LC_ALL: C LC_ALL: C
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Install MSSQL ODBC - name: Install MSSQL ODBC
if: ${{ inputs.platform == 'ms' }} if: ${{ inputs.platform == 'ms' }}
run: sudo ./data/infra/ci/install-ms-odbc.sh run: sudo ./data/infra/ci/install-ms-odbc.sh

View file

@ -10,5 +10,5 @@ jobs:
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- name: Checkout code - name: Checkout code
uses: actions/checkout@v3 uses: actions/checkout@v4
- run: docker build -t shlink-docker-image:temp . - run: docker build -t shlink-docker-image:temp .

View file

@ -13,9 +13,10 @@ jobs:
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
strategy: strategy:
matrix: matrix:
php-version: ['8.2'] php-version: ['8.2', '8.3']
continue-on-error: ${{ matrix.php-version == '8.3' }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: './.github/actions/ci-setup' - uses: './.github/actions/ci-setup'
with: with:
php-version: ${{ matrix.php-version }} php-version: ${{ matrix.php-version }}

View file

@ -13,9 +13,10 @@ jobs:
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
strategy: strategy:
matrix: matrix:
php-version: ['8.2'] php-version: ['8.2', '8.3']
continue-on-error: ${{ matrix.php-version == '8.3' }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Start postgres database server - name: Start postgres database server
if: ${{ inputs.test-group == 'api' }} if: ${{ inputs.test-group == 'api' }}
run: docker-compose -f docker-compose.yml -f docker-compose.ci.yml up -d shlink_db_postgres run: docker-compose -f docker-compose.yml -f docker-compose.ci.yml up -d shlink_db_postgres

View file

@ -32,7 +32,7 @@ jobs:
php-version: ['8.2'] php-version: ['8.2']
command: ['cs', 'stan', 'swagger:validate'] command: ['cs', 'stan', 'swagger:validate']
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: './.github/actions/ci-setup' - uses: './.github/actions/ci-setup'
with: with:
php-version: ${{ matrix.php-version }} php-version: ${{ matrix.php-version }}
@ -59,17 +59,18 @@ jobs:
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
strategy: strategy:
matrix: matrix:
php-version: ['8.2'] php-version: ['8.2', '8.3']
continue-on-error: ${{ matrix.php-version == '8.3' }}
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # rr get-binary picks this env automatically GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # rr get-binary picks this env automatically
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- run: docker-compose -f docker-compose.yml -f docker-compose.ci.yml up -d shlink_db_postgres - run: docker-compose -f docker-compose.yml -f docker-compose.ci.yml up -d shlink_db_postgres
- uses: shivammathur/setup-php@v2 - uses: shivammathur/setup-php@v2
with: with:
php-version: ${{ matrix.php-version }} php-version: ${{ matrix.php-version }}
tools: composer tools: composer
- run: composer install --no-interaction --prefer-dist --ignore-platform-req=ext-openswoole - run: composer install --no-interaction --prefer-dist --ignore-platform-req=ext-openswoole ${{ matrix.php-version == '8.3' && '--ignore-platform-req=php' || '' }}
- run: ./vendor/bin/rr get --no-interaction --no-config --location bin/ && chmod +x bin/rr - run: ./vendor/bin/rr get --no-interaction --no-config --location bin/ && chmod +x bin/rr
- run: composer test:api:rr - run: composer test:api:rr
@ -138,7 +139,7 @@ jobs:
php-version: ['8.2'] php-version: ['8.2']
steps: steps:
- name: Checkout code - name: Checkout code
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Use PHP - name: Use PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:

View file

@ -13,7 +13,7 @@ jobs:
php-version: ['8.2'] php-version: ['8.2']
swoole: ['yes', 'no'] swoole: ['yes', 'no']
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: './.github/actions/ci-setup' - uses: './.github/actions/ci-setup'
with: with:
php-version: ${{ matrix.php-version }} php-version: ${{ matrix.php-version }}
@ -33,7 +33,7 @@ jobs:
needs: ['build'] needs: ['build']
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: actions/download-artifact@v3 - uses: actions/download-artifact@v3
with: with:
path: build path: build

View file

@ -12,7 +12,7 @@ jobs:
matrix: matrix:
php-version: ['8.2'] php-version: ['8.2']
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Determine version - name: Determine version
id: determine_version id: determine_version
run: echo "version=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT run: echo "version=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT

View file

@ -16,6 +16,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com), and this
This is important if you are running multiple Shlink instance on the same server, or they share the same Redis instance (even more so if they are on different versions). This is important if you are running multiple Shlink instance on the same server, or they share the same Redis instance (even more so if they are on different versions).
* [#1905](https://github.com/shlinkio/shlink/issues/1905) Add support for PHP 8.3.
### Changed ### Changed
* [#1799](https://github.com/shlinkio/shlink/issues/1799) RoadRunner/openswoole jobs are not run anymore for tasks that are actually disabled. * [#1799](https://github.com/shlinkio/shlink/issues/1799) RoadRunner/openswoole jobs are not run anymore for tasks that are actually disabled.

View file

@ -45,13 +45,13 @@
"php-middleware/request-id": "^4.1", "php-middleware/request-id": "^4.1",
"pugx/shortid-php": "^1.1", "pugx/shortid-php": "^1.1",
"ramsey/uuid": "^4.7", "ramsey/uuid": "^4.7",
"shlinkio/shlink-common": "dev-main#4e859a7 as 5.7", "shlinkio/shlink-common": "dev-main#7d46772 as 5.7",
"shlinkio/shlink-config": "dev-main#c0aa01f as 2.5", "shlinkio/shlink-config": "dev-main#cde5d3b as 2.5",
"shlinkio/shlink-event-dispatcher": "dev-main#bd3a62b as 3.1", "shlinkio/shlink-event-dispatcher": "dev-main#faf2582 as 3.1",
"shlinkio/shlink-importer": "^5.1", "shlinkio/shlink-importer": "dev-main#d621b20 as 5.2",
"shlinkio/shlink-installer": "dev-develop#a665623 as 8.6", "shlinkio/shlink-installer": "dev-develop#c1ef08c as 8.6",
"shlinkio/shlink-ip-geolocation": "^3.2", "shlinkio/shlink-ip-geolocation": "dev-main#4a1cef8 as 3.3",
"shlinkio/shlink-json": "^1.0", "shlinkio/shlink-json": "dev-main#e5a111c as 1.1",
"spiral/roadrunner": "^2023.2", "spiral/roadrunner": "^2023.2",
"spiral/roadrunner-cli": "^2.5", "spiral/roadrunner-cli": "^2.5",
"spiral/roadrunner-http": "^3.1", "spiral/roadrunner-http": "^3.1",
@ -75,7 +75,7 @@
"phpunit/phpunit": "^10.4", "phpunit/phpunit": "^10.4",
"roave/security-advisories": "dev-master", "roave/security-advisories": "dev-master",
"shlinkio/php-coding-standard": "~2.3.0", "shlinkio/php-coding-standard": "~2.3.0",
"shlinkio/shlink-test-utils": "^3.7.1", "shlinkio/shlink-test-utils": "dev-main#cbbb64e as 3.8.0",
"symfony/var-dumper": "^6.3", "symfony/var-dumper": "^6.3",
"veewee/composer-run-parallel": "^1.2" "veewee/composer-run-parallel": "^1.2"
}, },