Add PHP 8.0 to CI

This commit is contained in:
Daniel Siepmann 2021-11-24 13:36:11 +01:00
parent 0764aa9f0f
commit a06ac46ae3
3 changed files with 177 additions and 59 deletions

View file

@ -8,7 +8,7 @@ before_script:
- php -r "unlink('composer-setup.php');"
test:composer:
image: php:7.4-alpine
image: php:8.0-alpine
stage: test
script:
- composer validate --no-check-publish --strict
@ -63,12 +63,20 @@ test:phpstan:8.0:
- composer install --prefer-dist --no-progress
- php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress
test:phpstan:7.4:
test:phpstan:7.4:11.5:
image: php:7.4-alpine
stage: test
before_script:
script:
- composer install --prefer-dist --no-progress
- composer require --no-ansi --no-interaction --no-progress typo3/cms-core:"^11.5"
- php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress
test:phpstan:7.4:10.4:
image: php:7.4-alpine
stage: test
before_script:
script:
- composer require --no-ansi --no-interaction --no-progress typo3/cms-core:"^10.4"
- php -d memory_limit=-1 ./vendor/bin/phpstan --no-progress
test:phpstan:7.3:

View file

@ -10,11 +10,11 @@
}
],
"require": {
"php": "~7.2.0 || ~7.3.0 || ~7.4.0",
"typo3/cms-core": "^10.4",
"typo3/cms-extbase": "^10.4",
"typo3/cms-fluid": "^10.4",
"typo3/cms-frontend": "^10.4"
"php": "~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0",
"typo3/cms-core": "^10.4 || ^11.5",
"typo3/cms-extbase": "^10.4 || ^11.5",
"typo3/cms-fluid": "^10.4 || ^11.5",
"typo3/cms-frontend": "^10.4 || ^11.5"
},
"autoload": {
"psr-4": {
@ -36,8 +36,8 @@
"require-dev": {
"squizlabs/php_codesniffer": "^3.5",
"symplify/easy-coding-standard": "^9.4",
"phpstan/phpstan": "^0.12.98",
"phpstan/phpstan": "^1.0",
"phpstan/extension-installer": "^1.1",
"saschaegerer/phpstan-typo3": "^0.13.3"
"saschaegerer/phpstan-typo3": "^1.0"
}
}

View file

@ -1,5 +1,45 @@
parameters:
ignoreErrors:
-
message: "#^Cannot access offset 'considerDate' on mixed\\.$#"
count: 1
path: Classes/Controller/DateController.php
-
message: "#^Cannot access offset 'end' on mixed\\.$#"
count: 1
path: Classes/Controller/DateController.php
-
message: "#^Cannot access offset 'events_search' on mixed\\.$#"
count: 2
path: Classes/Controller/DateController.php
-
message: "#^Cannot access offset 'region' on mixed\\.$#"
count: 1
path: Classes/Controller/DateController.php
-
message: "#^Cannot access offset 'searchword' on mixed\\.$#"
count: 1
path: Classes/Controller/DateController.php
-
message: "#^Cannot access offset 'start' on mixed\\.$#"
count: 1
path: Classes/Controller/DateController.php
-
message: "#^Expression on left side of \\?\\? is not nullable\\.$#"
count: 1
path: Classes/Controller/DateController.php
-
message: "#^Parameter \\#1 \\$submittedValues of static method Wrm\\\\Events\\\\Domain\\\\Model\\\\Dto\\\\DateDemand\\:\\:createFromRequestValues\\(\\) expects array, mixed given\\.$#"
count: 1
path: Classes/Controller/DateController.php
-
message: "#^Cannot call method fetchAll\\(\\) on Doctrine\\\\DBAL\\\\Driver\\\\ResultStatement\\|int\\.$#"
count: 1
@ -20,6 +60,16 @@ parameters:
count: 1
path: Classes/Extbase/AddSpecialProperties.php
-
message: "#^Parameter \\#1 \\$uidOfReferencedDate of method Wrm\\\\Events\\\\Extbase\\\\AddSpecialProperties\\:\\:getOriginalDate\\(\\) expects int, mixed given\\.$#"
count: 1
path: Classes/Extbase/AddSpecialProperties.php
-
message: "#^Cannot access offset 'uid' on mixed\\.$#"
count: 3
path: Classes/Service/CategoryService.php
-
message: "#^Cannot call method fetch\\(\\) on Doctrine\\\\DBAL\\\\Driver\\\\ResultStatement\\|int\\.$#"
count: 1
@ -30,9 +80,34 @@ parameters:
count: 1
path: Classes/Service/CategoryService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\CategoryService\\:\\:getChildrenCategories\\(\\) should return string but returns mixed\\.$#"
count: 1
path: Classes/Service/CategoryService.php
-
message: "#^Parameter \\#1 \\$idList of method Wrm\\\\Events\\\\Service\\\\CategoryService\\:\\:getChildrenCategoriesRecursive\\(\\) expects string, mixed given\\.$#"
count: 1
path: Classes/Service/CategoryService.php
-
message: "#^Cannot call method fetchAll\\(\\) on Doctrine\\\\DBAL\\\\Driver\\\\ResultStatement\\|int\\.$#"
count: 3
count: 2
path: Classes/Service/Cleanup/Database.php
-
message: "#^Parameter \\#1 \\$callback of function array_map expects \\(callable\\(mixed\\)\\: mixed\\)\\|null, Closure\\(array\\)\\: mixed given\\.$#"
count: 1
path: Classes/Service/Cleanup/Database.php
-
message: "#^Unsafe access to private constant Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Database\\:\\:DATE_TABLE through static\\:\\:\\.$#"
count: 5
path: Classes/Service/Cleanup/Database.php
-
message: "#^Unsafe access to private constant Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Database\\:\\:EVENT_TABLE through static\\:\\:\\.$#"
count: 4
path: Classes/Service/Cleanup/Database.php
-
@ -56,29 +131,19 @@ parameters:
path: Classes/Service/Cleanup/Files.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Files\\:\\:delete\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Files\\:\\:deleteAll\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/Cleanup/Files.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Files\\:\\:deleteAll\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Files\\:\\:deleteDangling\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/Cleanup/Files.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Files\\:\\:deleteDangling\\(\\) has no return typehint specified\\.$#"
message: "#^Parameter \\#1 \\$plainArray of method TYPO3\\\\CMS\\\\Core\\\\TypoScript\\\\TypoScriptService\\:\\:convertPlainArrayToTypoScriptArray\\(\\) expects array, mixed given\\.$#"
count: 1
path: Classes/Service/Cleanup/Files.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Files\\:\\:deleteFromDb\\(\\) has no return typehint specified\\.$#"
count: 1
path: Classes/Service/Cleanup/Files.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\Cleanup\\\\Files\\:\\:deleteFromFal\\(\\) has no return typehint specified\\.$#"
count: 1
path: Classes/Service/Cleanup/Files.php
path: Classes/Service/DataProcessingForModels.php
-
message: "#^Access to an undefined property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$sysCategoriesPid\\.$#"
@ -90,6 +155,21 @@ parameters:
count: 2
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Cannot access offset 'global_id' on mixed\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Cannot access offset 'items' on mixed\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Cannot access offset 'uid' on mixed\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Cannot call method fetch\\(\\) on Doctrine\\\\DBAL\\\\Driver\\\\ResultStatement\\|int\\.$#"
count: 1
@ -101,37 +181,42 @@ parameters:
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:getAttributeValue\\(\\) has no return typehint specified\\.$#"
message: "#^Cannot cast mixed to string\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:getOrCreateEvent\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:getAttributeValue\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:getOrCreateEvent\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has parameter \\$filesFolder with no typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has parameter \\$regionUid with no typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has parameter \\$filesFolder with no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has parameter \\$restExperience with no typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has parameter \\$regionUid with no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has parameter \\$storagePid with no typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has parameter \\$restExperience with no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:import\\(\\) has parameter \\$storagePid with no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
@ -141,57 +226,57 @@ parameters:
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:multi_array_key_exists\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:multi_array_key_exists\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:processData\\(\\) has parameter \\$data with no typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:processData\\(\\) has parameter \\$data with no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setAddress\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setAddress\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setAssets\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setAssets\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setCategories\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setCategories\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setDates\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setDates\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setLatLng\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setLatLng\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setOrganizer\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setOrganizer\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setSocial\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setSocial\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setTexts\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setTexts\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setTickets\\(\\) has no return typehint specified\\.$#"
message: "#^Method Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:setTickets\\(\\) has no return type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
@ -245,6 +330,11 @@ parameters:
count: 2
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Parameter \\#1 \\$var of function count expects array\\|Countable, mixed given\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Parameter \\#2 \\$minute of method DateTime\\:\\:setTime\\(\\) expects int, string given\\.$#"
count: 4
@ -256,82 +346,102 @@ parameters:
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$categoriesPid has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$categoriesPid has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$categoryParentUid has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$categoryParentUid has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$environment has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$environment has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$filesFolder has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$filesFolder has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$logger has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$logger has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$regionUid has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$regionUid has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restExperience has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restExperience has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restLicenseKey has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restLicenseKey has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restLimit has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restLimit has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restMode has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restMode has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restTemplate has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restTemplate has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restType has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restType has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restUrl has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$restUrl has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$storage has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$storage has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$storagePid has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$storagePid has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$tmpCurrentEvent has no typehint specified\\.$#"
message: "#^Property Wrm\\\\Events\\\\Service\\\\DestinationDataImportService\\:\\:\\$tmpCurrentEvent has no type specified\\.$#"
count: 1
path: Classes/Service/DestinationDataImportService.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/Overrides/sys_category.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/Overrides/tt_content.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/Overrides/tx_events_domain_model_event.php
-
message: "#^Right side of \\|\\| is always false\\.$#"
count: 1
path: Configuration/TCA/tx_events_domain_model_event.php