Fix bug on eager class constructor validation for generic checking ignoring inline var annotation and fix missing support for default property intialiazation, and quality of life improvements #287
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| name: PHP ${{ matrix.php }} (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, windows-latest, macos-latest] | |
| php: ['8.2', '8.3', '8.4', '8.5'] | |
| steps: | |
| - name: Checkout Code | |
| uses: actions/checkout@v4 | |
| - name: Setup PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: ${{ matrix.php }} | |
| extensions: dom, mbstring, zip, libxml, json, tokenizer, fileinfo | |
| coverage: ${{ matrix.os == 'ubuntu-latest' && matrix.php == '8.4' && 'pcov' || 'none' }} | |
| - name: Install Dependencies | |
| uses: ramsey/composer-install@v3 | |
| with: | |
| dependency-versions: ${{ matrix.php == '8.2' && 'lowest' || 'highest' }} | |
| - name: Run Static Analysis (PHPStan) | |
| run: ./vendor/bin/phpstan analyse --no-progress | |
| if: matrix.os == 'ubuntu-latest' && matrix.php == '8.3' | |
| - name: Warm Up TypePHP Cache | |
| run: php bin/typephp cache:warm | |
| - name: Run Runtime Type Checking Engine Suite (Pest) | |
| run: ./vendor/bin/pest tests/TypeChecking/Configuration/DocblockIgnoreTagsTest.php -v | |
| # - name: Run Runtime Type Checking Engine Suite (Pest) | |
| # run: ./vendor/bin/pest tests/TypeChecking --compact | |
| # - name: Run Full Test Suite with Coverage (Pest) | |
| # run: ./vendor/bin/pest --coverage-clover=clover.xml --compact | |
| # if: matrix.os == 'ubuntu-latest' && matrix.php == '8.4' | |
| # - name: Run Full Test Suite (Pest) | |
| # run: ./vendor/bin/pest --compact | |
| # if: "! (matrix.os == 'ubuntu-latest' && matrix.php == '8.4')" | |
| # - name: Upload Coverage to Codecov | |
| # uses: codecov/codecov-action@v5 | |
| # if: matrix.os == 'ubuntu-latest' && matrix.php == '8.4' | |
| # with: | |
| # token: ${{ secrets.CODECOV_TOKEN }} | |
| # files: clover.xml | |
| # fail_ci_if_error: false |