mirror of
https://github.com/DanielSiepmann/tracking.git
synced 2024-11-21 21:46:09 +01:00
Support PHP 7.3
- Extend CI to test everything against PHP 7.3 - Update composer to allow installation with PHP 7.3 - Remove dependency checker, install loosely within CI to get compatible version with actual PHP version. - Adjust CI to use PHP compatible MySQL versions. Relates: #69
This commit is contained in:
parent
0d1366f386
commit
721b6e5a31
4 changed files with 104 additions and 12 deletions
97
.github/workflows/ci.yaml
vendored
97
.github/workflows/ci.yaml
vendored
|
@ -14,6 +14,7 @@ jobs:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
php-version:
|
php-version:
|
||||||
|
- 7.3
|
||||||
- 7.4
|
- 7.4
|
||||||
- 8.0
|
- 8.0
|
||||||
steps:
|
steps:
|
||||||
|
@ -35,6 +36,9 @@ jobs:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
php-version:
|
php-version:
|
||||||
|
# no 7.3
|
||||||
|
# maglnet/composer-require-checker has no compatible version
|
||||||
|
# - '7.3'
|
||||||
- '7.4'
|
- '7.4'
|
||||||
typo3-version:
|
typo3-version:
|
||||||
- '^10.4'
|
- '^10.4'
|
||||||
|
@ -61,6 +65,9 @@ jobs:
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: composer install --prefer-dist --no-progress --no-plugins
|
run: composer install --prefer-dist --no-progress --no-plugins
|
||||||
|
|
||||||
|
- name: Install dependency checker
|
||||||
|
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "maglnet/composer-require-checker"
|
||||||
|
|
||||||
- name: Switch to expected TYPO3 Version
|
- name: Switch to expected TYPO3 Version
|
||||||
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
|
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
|
||||||
|
|
||||||
|
@ -101,6 +108,9 @@ jobs:
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: composer install --prefer-dist --no-progress --no-plugins
|
run: composer install --prefer-dist --no-progress --no-plugins
|
||||||
|
|
||||||
|
- name: Install dependency checker
|
||||||
|
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "maglnet/composer-require-checker"
|
||||||
|
|
||||||
- name: Switch to expected TYPO3 Version
|
- name: Switch to expected TYPO3 Version
|
||||||
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
|
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
|
||||||
|
|
||||||
|
@ -182,6 +192,7 @@ jobs:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
php-version:
|
php-version:
|
||||||
|
- '7.3'
|
||||||
- '7.4'
|
- '7.4'
|
||||||
typo3-version:
|
typo3-version:
|
||||||
- '^10.4'
|
- '^10.4'
|
||||||
|
@ -255,13 +266,72 @@ jobs:
|
||||||
- name: PHPUnit Tests
|
- name: PHPUnit Tests
|
||||||
run: ./vendor/bin/phpunit --testdox
|
run: ./vendor/bin/phpunit --testdox
|
||||||
|
|
||||||
tests-mysql-TYPO3-v10:
|
tests-mysql-v5-TYPO3-v10:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs:
|
needs:
|
||||||
- check-dependencies-TYPO3-v10
|
- check-dependencies-TYPO3-v10
|
||||||
- xml-linting
|
- xml-linting
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
|
db-version:
|
||||||
|
- '5.7'
|
||||||
|
- '5.6'
|
||||||
|
php-version:
|
||||||
|
- '7.3'
|
||||||
|
- '7.4'
|
||||||
|
typo3-version:
|
||||||
|
- '^10.4'
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Install PHP
|
||||||
|
uses: shivammathur/setup-php@v2
|
||||||
|
with:
|
||||||
|
php-version: "${{ matrix.php-version }}"
|
||||||
|
|
||||||
|
- name: Get Composer Cache Directory
|
||||||
|
id: composer-cache
|
||||||
|
run: |
|
||||||
|
echo "::set-output name=dir::$(composer config cache-files-dir)"
|
||||||
|
|
||||||
|
- uses: actions/cache@v1
|
||||||
|
with:
|
||||||
|
path: ${{ steps.composer-cache.outputs.dir }}
|
||||||
|
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-composer-
|
||||||
|
|
||||||
|
- name: Setup MySQL
|
||||||
|
uses: mirromutth/mysql-action@v1.1
|
||||||
|
with:
|
||||||
|
mysql version: '${{ matrix.db-version }}'
|
||||||
|
mysql database: 'typo3'
|
||||||
|
mysql root password: 'root'
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: composer install --prefer-dist --no-progress
|
||||||
|
|
||||||
|
- name: Switch to expected TYPO3 Version
|
||||||
|
run: composer require --prefer-dist --no-progress --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
|
||||||
|
|
||||||
|
- name: PHPUnit Tests
|
||||||
|
run: |-
|
||||||
|
export typo3DatabaseDriver="pdo_mysql"
|
||||||
|
export typo3DatabaseName="typo3"
|
||||||
|
export typo3DatabaseHost="127.0.0.1"
|
||||||
|
export typo3DatabaseUsername="root"
|
||||||
|
export typo3DatabasePassword="root"
|
||||||
|
./vendor/bin/phpunit --testdox
|
||||||
|
|
||||||
|
tests-mysql-v8-TYPO3-v10:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs:
|
||||||
|
- check-dependencies-TYPO3-v10
|
||||||
|
- xml-linting
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
db-version:
|
||||||
|
- '8'
|
||||||
php-version:
|
php-version:
|
||||||
- '7.4'
|
- '7.4'
|
||||||
typo3-version:
|
typo3-version:
|
||||||
|
@ -286,8 +356,12 @@ jobs:
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-composer-
|
${{ runner.os }}-composer-
|
||||||
|
|
||||||
- name: Start MySQL
|
- name: Setup MySQL
|
||||||
run: sudo /etc/init.d/mysql start
|
uses: mirromutth/mysql-action@v1.1
|
||||||
|
with:
|
||||||
|
mysql version: '${{ matrix.db-version }}'
|
||||||
|
mysql database: 'typo3'
|
||||||
|
mysql root password: 'root'
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: composer install --prefer-dist --no-progress
|
run: composer install --prefer-dist --no-progress
|
||||||
|
@ -297,20 +371,22 @@ jobs:
|
||||||
|
|
||||||
- name: PHPUnit Tests
|
- name: PHPUnit Tests
|
||||||
run: |-
|
run: |-
|
||||||
export typo3DatabaseDriver="mysqli"
|
export typo3DatabaseDriver="pdo_mysql"
|
||||||
export typo3DatabaseName="typo3"
|
export typo3DatabaseName="typo3"
|
||||||
export typo3DatabaseHost="127.0.0.1"
|
export typo3DatabaseHost="127.0.0.1"
|
||||||
export typo3DatabaseUsername="root"
|
export typo3DatabaseUsername="root"
|
||||||
export typo3DatabasePassword="root"
|
export typo3DatabasePassword="root"
|
||||||
./vendor/bin/phpunit --testdox
|
./vendor/bin/phpunit --testdox
|
||||||
|
|
||||||
tests-mysql-TYPO3-v11:
|
tests-mysql-v8-TYPO3-v11:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs:
|
needs:
|
||||||
- check-dependencies-TYPO3-V11
|
- check-dependencies-TYPO3-V11
|
||||||
- xml-linting
|
- xml-linting
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
|
db-version:
|
||||||
|
- '8'
|
||||||
php-version:
|
php-version:
|
||||||
- '7.4'
|
- '7.4'
|
||||||
- '8.0'
|
- '8.0'
|
||||||
|
@ -336,8 +412,12 @@ jobs:
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-composer-
|
${{ runner.os }}-composer-
|
||||||
|
|
||||||
- name: Start MySQL
|
- name: Setup MySQL
|
||||||
run: sudo /etc/init.d/mysql start
|
uses: mirromutth/mysql-action@v1.1
|
||||||
|
with:
|
||||||
|
mysql version: '${{ matrix.db-version }}'
|
||||||
|
mysql database: 'typo3'
|
||||||
|
mysql root password: 'root'
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: composer install --prefer-dist --no-progress
|
run: composer install --prefer-dist --no-progress
|
||||||
|
@ -347,7 +427,7 @@ jobs:
|
||||||
|
|
||||||
- name: PHPUnit Tests
|
- name: PHPUnit Tests
|
||||||
run: |-
|
run: |-
|
||||||
export typo3DatabaseDriver="mysqli"
|
export typo3DatabaseDriver="pdo_mysql"
|
||||||
export typo3DatabaseName="typo3"
|
export typo3DatabaseName="typo3"
|
||||||
export typo3DatabaseHost="127.0.0.1"
|
export typo3DatabaseHost="127.0.0.1"
|
||||||
export typo3DatabaseUsername="root"
|
export typo3DatabaseUsername="root"
|
||||||
|
@ -361,6 +441,7 @@ jobs:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
php-version:
|
php-version:
|
||||||
|
- '7.3'
|
||||||
- '7.4'
|
- '7.4'
|
||||||
typo3-version:
|
typo3-version:
|
||||||
- '^10.4'
|
- '^10.4'
|
||||||
|
|
|
@ -12,7 +12,15 @@ Breaking
|
||||||
Features
|
Features
|
||||||
--------
|
--------
|
||||||
|
|
||||||
Nothing
|
* Support TYPO3 v10 running PHP version 7.3.
|
||||||
|
CI is extended to execute tests and checks with new possible combinations.
|
||||||
|
|
||||||
|
CI is also extended to test with multiple MySQL versions which depend on concrete
|
||||||
|
PHP version.
|
||||||
|
|
||||||
|
Resolves: :issue:`69`.
|
||||||
|
|
||||||
|
Sponsored by: https://www.werkraum-media.de/
|
||||||
|
|
||||||
Fixes
|
Fixes
|
||||||
-----
|
-----
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
"require": {
|
"require": {
|
||||||
"doctrine/dbal": "^2.12",
|
"doctrine/dbal": "^2.12",
|
||||||
"ext-mbstring": "*",
|
"ext-mbstring": "*",
|
||||||
"php": "~7.4.0 || ~8.0.0",
|
"php": "~7.3.0 || ~7.4.0 || ~8.0.0",
|
||||||
"psr/http-message": "^1.0",
|
"psr/http-message": "^1.0",
|
||||||
"psr/http-server-handler": "^1.0",
|
"psr/http-server-handler": "^1.0",
|
||||||
"psr/http-server-middleware": "^1.0",
|
"psr/http-server-middleware": "^1.0",
|
||||||
|
@ -43,7 +43,6 @@
|
||||||
"phpstan/phpstan": "^0.12.18",
|
"phpstan/phpstan": "^0.12.18",
|
||||||
"phpstan/extension-installer": "^1.0",
|
"phpstan/extension-installer": "^1.0",
|
||||||
"jangregor/phpstan-prophecy": "^0.8.1",
|
"jangregor/phpstan-prophecy": "^0.8.1",
|
||||||
"maglnet/composer-require-checker": "^3.2",
|
|
||||||
"phpspec/prophecy-phpunit": "^2.0",
|
"phpspec/prophecy-phpunit": "^2.0",
|
||||||
"typo3/testing-framework": "^6.8.2",
|
"typo3/testing-framework": "^6.8.2",
|
||||||
"saschaegerer/phpstan-typo3": "^0.13.1",
|
"saschaegerer/phpstan-typo3": "^0.13.1",
|
||||||
|
|
|
@ -4,8 +4,12 @@ parameters:
|
||||||
- Classes
|
- Classes
|
||||||
- Tests
|
- Tests
|
||||||
checkMissingIterableValueType: false
|
checkMissingIterableValueType: false
|
||||||
reportUnmatchedIgnoredErrors: true
|
reportUnmatchedIgnoredErrors: false
|
||||||
ignoreErrors:
|
ignoreErrors:
|
||||||
|
# Ignore error for TYPO3 10 (ResultStatement) and TYPO3 11 (Statement)
|
||||||
- '#Cannot call method fetch\(\) on Doctrine\\DBAL\\Driver\\Statement\|int\.#'
|
- '#Cannot call method fetch\(\) on Doctrine\\DBAL\\Driver\\Statement\|int\.#'
|
||||||
|
- '#Cannot call method fetch\(\) on Doctrine\\DBAL\\Driver\\ResultStatement\|int\.#'
|
||||||
- '#Cannot call method fetchAll\(\) on Doctrine\\DBAL\\Driver\\Statement\|int\.#'
|
- '#Cannot call method fetchAll\(\) on Doctrine\\DBAL\\Driver\\Statement\|int\.#'
|
||||||
|
- '#Cannot call method fetchAll\(\) on Doctrine\\DBAL\\Driver\\ResultStatement\|int\.#'
|
||||||
- '#Cannot call method fetchColumn\(\) on Doctrine\\DBAL\\Driver\\Statement\|int\.#'
|
- '#Cannot call method fetchColumn\(\) on Doctrine\\DBAL\\Driver\\Statement\|int\.#'
|
||||||
|
- '#Cannot call method fetchColumn\(\) on Doctrine\\DBAL\\Driver\\ResultStatement\|int\.#'
|
||||||
|
|
Loading…
Reference in a new issue