Merge pull request #1907 from acelaya-forks/feature/php-8.3

Add support for PHP 8.3
This commit is contained in:
Alejandro Celaya 2023-11-04 13:30:31 +01:00 committed by GitHub
commit d9d6d5bd9c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 36 additions and 25 deletions

View file

@ -43,5 +43,5 @@ runs:
ini-values: pcov.directory=module
- name: Install dependencies
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-reqs' || '' }}
shell: bash

View file

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

View file

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

View file

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

View file

@ -13,9 +13,10 @@ jobs:
runs-on: ubuntu-22.04
strategy:
matrix:
php-version: ['8.2']
php-version: ['8.2', '8.3']
continue-on-error: ${{ matrix.php-version == '8.3' }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Start postgres database server
if: ${{ inputs.test-group == 'api' }}
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']
command: ['cs', 'stan', 'swagger:validate']
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: './.github/actions/ci-setup'
with:
php-version: ${{ matrix.php-version }}
@ -59,17 +59,18 @@ jobs:
runs-on: ubuntu-22.04
strategy:
matrix:
php-version: ['8.2']
php-version: ['8.2', '8.3']
continue-on-error: ${{ matrix.php-version == '8.3' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # rr get-binary picks this env automatically
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
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
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-reqs' || '' }}
- run: ./vendor/bin/rr get --no-interaction --no-config --location bin/ && chmod +x bin/rr
- run: composer test:api:rr
@ -138,7 +139,7 @@ jobs:
php-version: ['8.2']
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Use PHP
uses: shivammathur/setup-php@v2
with:

View file

@ -10,10 +10,15 @@ jobs:
runs-on: ubuntu-22.04
strategy:
matrix:
php-version: ['8.2']
php-version: ['8.2', '8.3']
swoole: ['yes', 'no']
exclude:
# Openswoole does not support PHP 8.3, so lets not build for that combination
# Next Shlink version (4.0.0) is completely dropping support for openswoole and we will be able to remove this
- php-version: '8.3'
swoole: 'yes'
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: './.github/actions/ci-setup'
with:
php-version: ${{ matrix.php-version }}
@ -33,7 +38,7 @@ jobs:
needs: ['build']
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: actions/download-artifact@v3
with:
path: build

View file

@ -12,7 +12,7 @@ jobs:
matrix:
php-version: ['8.2']
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Determine version
id: determine_version
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).
* [#1905](https://github.com/shlinkio/shlink/issues/1905) Add support for PHP 8.3.
### Changed
* [#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",
"pugx/shortid-php": "^1.1",
"ramsey/uuid": "^4.7",
"shlinkio/shlink-common": "dev-main#4e859a7 as 5.7",
"shlinkio/shlink-config": "dev-main#c0aa01f as 2.5",
"shlinkio/shlink-event-dispatcher": "dev-main#bd3a62b as 3.1",
"shlinkio/shlink-importer": "^5.1",
"shlinkio/shlink-installer": "dev-develop#a665623 as 8.6",
"shlinkio/shlink-ip-geolocation": "^3.2",
"shlinkio/shlink-json": "^1.0",
"shlinkio/shlink-common": "dev-main#7d46772 as 5.7",
"shlinkio/shlink-config": "dev-main#cde5d3b as 2.5",
"shlinkio/shlink-event-dispatcher": "dev-main#faf2582 as 3.1",
"shlinkio/shlink-importer": "dev-main#d621b20 as 5.2",
"shlinkio/shlink-installer": "dev-develop#c1ef08c as 8.6",
"shlinkio/shlink-ip-geolocation": "dev-main#4a1cef8 as 3.3",
"shlinkio/shlink-json": "dev-main#e5a111c as 1.1",
"spiral/roadrunner": "^2023.2",
"spiral/roadrunner-cli": "^2.5",
"spiral/roadrunner-http": "^3.1",
@ -75,7 +75,7 @@
"phpunit/phpunit": "^10.4",
"roave/security-advisories": "dev-master",
"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",
"veewee/composer-run-parallel": "^1.2"
},