mirror of https://github.com/FriendsOfTYPO3/tea.git synced 2025-03-15 09:03:50 +01:00

[FEATURE] Add support for PHP 8.4

Comment-out GitHub Action jobs that fail with PHP 8.4 due to
incompatible dependencies.
This commit is contained in:
Oliver Klee 2025-01-03 10:40:23 +01:00
parent 8bb14d867d
commit 00a5e14d8d
No known key found for this signature in database
GPG key ID: E74BB46157AA8FDF
10 changed files with 66 additions and 3 deletions

View file

@ -44,6 +44,7 @@ jobs:
- "8.1"
- "8.2"
- "8.3"
- "8.4"
code-quality:
name: "Code quality checks"
runs-on: ubuntu-24.04
@ -174,6 +175,12 @@ jobs:
- typo3-version: "^12.4"
php-version: "8.3"
composer-dependencies: highest
- typo3-version: "^12.4"
php-version: "8.4"
composer-dependencies: lowest
- typo3-version: "^12.4"
php-version: "8.4"
composer-dependencies: highest
functional-tests:
name: "Functional tests"
runs-on: ubuntu-24.04
@ -251,6 +258,12 @@ jobs:
- typo3-version: "^12.4"
php-version: "8.3"
composer-dependencies: highest
# - typo3-version: "^12.4"
# php-version: "8.4"
# composer-dependencies: lowest
- typo3-version: "^12.4"
php-version: "8.4"
composer-dependencies: highest
shellcheck:
name: Check shell scripts
runs-on: ubuntu-24.04

View file

@ -20,6 +20,8 @@ include:
- '/.gitlab/pipeline/jobs/func-v12-php8.2-lowest.yml'
- '/.gitlab/pipeline/jobs/func-v12-php8.3-highest.yml'
- '/.gitlab/pipeline/jobs/func-v12-php8.3-lowest.yml'
- '/.gitlab/pipeline/jobs/func-v12-php8.4-highest.yml'
- '/.gitlab/pipeline/jobs/func-v12-php8.4-lowest.yml'
- '/.gitlab/pipeline/jobs/javascript-lint.yml'
- '/.gitlab/pipeline/jobs/json-lint.yml'
- '/.gitlab/pipeline/jobs/php-cs-fixer.yml'
@ -34,6 +36,7 @@ include:
- '/.gitlab/pipeline/jobs/unit-v12-php8.2-lowest.yml'
- '/.gitlab/pipeline/jobs/unit-v12-php8.3-highest.yml'
- '/.gitlab/pipeline/jobs/unit-v12-php8.3-lowest.yml'
- '/.gitlab/pipeline/jobs/unit-v12-php8.4-highest.yml'
- '/.gitlab/pipeline/jobs/xliff-lint.yml'
- '/.gitlab/pipeline/jobs/yaml-lint.yml'
- template: Security/Secret-Detection.gitlab-ci.yml

View file

@ -0,0 +1,14 @@
func-v12-php8.4-highest:
extends: .default
image: ghcr.io/typo3/core-testing-php84:latest
services:
- mariadb:10
stage: test
needs:
- build-composer-dependencies
- php-lint-php8.4
script:
- echo "Job ${CI_JOB_NAME}"
- composer require --no-ansi --no-interaction --no-progress --no-install typo3/cms-core:"^12.4"
- composer update --no-ansi --no-interaction --no-progress --with-dependencies
- composer ci:tests:functional

View file

@ -0,0 +1,14 @@
func-v12-php8.4-lowest:
extends: .default
image: ghcr.io/typo3/core-testing-php84:latest
services:
- mariadb:10
stage: test
needs:
- build-composer-dependencies
- php-lint-php8.4
script:
- echo "Job ${CI_JOB_NAME}"
- composer require --no-ansi --no-interaction --no-progress --no-install typo3/cms-core:"^12.4"
- composer update --no-ansi --no-interaction --no-progress --with-dependencies --prefer-lowest
- composer ci:tests:functional

View file

@ -0,0 +1,7 @@
php-lint-php8.4:
extends: .composer-update
image: ghcr.io/typo3/core-testing-php84:latest
stage: lint
needs: [ ]
script:
- composer ci:php:lint

View file

@ -0,0 +1,11 @@
unit-v12-php8.4-highest:
extends: .default
image: ghcr.io/typo3/core-testing-php84:latest
stage: test
needs:
- build-composer-dependencies
- php-lint-php8.4
script:
- echo "Job ${CI_JOB_NAME}"
- composer require --no-progress typo3/cms-core:"^12.4"
- composer ci:tests:unit

View file

@ -6,6 +6,7 @@ This project adheres to [Semantic Versioning](https://semver.org/).
## x.y.z
### Added
- Add support for PHP 8.4 (#1536)
- Add support for PostgreSQL 16 (#1271)
### Changed

View file

@ -39,7 +39,7 @@
"docs": "https://docs.typo3.org/p/ttn/tea/main/en-us/"
},
"require": {
"php": "~8.1.0 || ~8.2.0 || ~8.3.0",
"php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0",
"psr/http-message": "^1.0.1",
"typo3/cms-core": "^12.4.26",
"typo3/cms-extbase": "^12.4.26",

View file

@ -7,7 +7,7 @@ $EM_CONF[$_EXTKEY] = [
'category' => 'example',
'constraints' => [
'depends' => [
'php' => '8.1.0-8.3.99',
'php' => '8.1.0-8.4.99',
'typo3' => '12.4.26-12.4.99',
'extbase' => '12.4.26-12.4.99',
'fluid' => '12.4.26-12.4.99',

View file

@ -94,7 +94,7 @@ return RectorConfig::configure()
])
->withImportNames(true, true, false)
->withConfiguredRule(ExtEmConfRector::class, [
ExtEmConfRector::PHP_VERSION_CONSTRAINT => '8.1.0-8.3.99',
ExtEmConfRector::PHP_VERSION_CONSTRAINT => '8.1.0-8.4.99',
ExtEmConfRector::TYPO3_VERSION_CONSTRAINT => '12.4.26-12.4.99',
ExtEmConfRector::ADDITIONAL_VALUES_TO_BE_REMOVED => [],
])