|
6 | 6 | pull_request: |
7 | 7 | branches: [ master ] |
8 | 8 |
|
| 9 | +permissions: |
| 10 | + contents: read |
| 11 | + |
9 | 12 | jobs: |
10 | 13 | test: |
11 | 14 | strategy: |
| 15 | + fail-fast: false |
12 | 16 | matrix: |
13 | | - php-versions: [ '7.4', '8.0', '8.1' ] |
14 | | - include: |
15 | | - - php-versions: '7.4' |
16 | | - coverage: pcov |
17 | | - composer-prefer: '--prefer-lowest --prefer-stable' |
18 | | - phpunit-flags: '--coverage-clover coverage.xml' |
| 17 | + php-versions: [ '8.2', '8.3', '8.4', '8.5' ] |
19 | 18 |
|
20 | 19 | runs-on: ubuntu-latest |
21 | 20 |
|
22 | 21 | steps: |
23 | | - - uses: actions/checkout@v2 |
| 22 | + - uses: actions/checkout@v4 |
24 | 23 |
|
25 | 24 | - name: Set up PHP |
26 | 25 | uses: shivammathur/setup-php@v2 |
27 | 26 | with: |
28 | 27 | php-version: ${{ matrix.php-versions }} |
29 | | - coverage: ${{ matrix.coverage }} |
| 28 | + coverage: none |
| 29 | + tools: composer:v2 |
| 30 | + |
30 | 31 |
|
31 | | - - name: Validate composer.json and composer.lock |
32 | | - run: composer validate --strict |
| 32 | + - name: Validate composer.json |
| 33 | + run: composer validate --strict --no-check-lock |
33 | 34 |
|
34 | 35 | - name: Cache Composer packages |
35 | | - id: composer-cache |
36 | | - uses: actions/cache@v2 |
| 36 | + uses: actions/cache@v4 |
37 | 37 | with: |
38 | 38 | path: vendor |
39 | | - key: ${{ runner.os }}-composer-${{ matrix.composer-prefer }}$-${{ hashFiles('**/composer.lock') }} |
| 39 | + key: ${{ runner.os }}-composer-${{ matrix.php-versions }}-${{ hashFiles('**/composer.json') }} |
40 | 40 | restore-keys: | |
41 | | - ${{ runner.os }}-composer-${{ matrix.composer-prefer }}- |
| 41 | + ${{ runner.os }}-composer-${{ matrix.php-versions }}- |
42 | 42 |
|
43 | 43 | - name: Install dependencies |
44 | | - run: composer update --prefer-dist --no-progress ${{ matrix.composer-prefer }} |
| 44 | + run: composer update --prefer-dist --no-progress |
45 | 45 |
|
46 | 46 | - name: Run test suite |
47 | | - run: vendor/bin/phpunit ${{ matrix.phpunit-flags }} |
48 | | - |
49 | | - - name: Upload coverage |
50 | | - if: matrix.coverage |
51 | | - run: | |
52 | | - wget https://scrutinizer-ci.com/ocular.phar |
53 | | - php ocular.phar code-coverage:upload --format=php-clover coverage.xml --revision=${{ github.event.pull_request.head.sha || github.sha }} |
| 47 | + run: vendor/bin/phpunit |
0 commit comments