From 808075949e6c7c7e0878023409b0fdc9acd27f0d Mon Sep 17 00:00:00 2001 From: Simon Benjamin <163124+Benjaminhu@users.noreply.github.com> Date: Wed, 4 Jun 2025 17:15:38 +0200 Subject: [PATCH 1/7] [info] fix broken tests: [error] - 1) ModelTest::testPhpTypeHint with data set "Non-nullable date" ('date', false, '\Carbon\Carbon') - 2) ModelTest::testPhpTypeHint with data set "Nullable date" ('date', true, '\Carbon\Carbon|null') --- src/Coders/Model/Model.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Coders/Model/Model.php b/src/Coders/Model/Model.php index 8dc54996..d4221c98 100644 --- a/src/Coders/Model/Model.php +++ b/src/Coders/Model/Model.php @@ -352,6 +352,7 @@ public function phpTypeHint($castType, $nullable) case 'collection': $type = '\Illuminate\Support\Collection'; break; + case 'date': case 'datetime': $type = '\Carbon\Carbon'; break; From 75df4a3f2cfbace7e1729d9eabd0485cf1697337 Mon Sep 17 00:00:00 2001 From: Simon Benjamin <163124+Benjaminhu@users.noreply.github.com> Date: Wed, 4 Jun 2025 17:28:45 +0200 Subject: [PATCH 2/7] [info] run github tests --- .github/workflows/run-tests.yml | 39 +++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 .github/workflows/run-tests.yml diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml new file mode 100644 index 00000000..4a7b93fa --- /dev/null +++ b/.github/workflows/run-tests.yml @@ -0,0 +1,39 @@ +name: "Run Tests - Current" + +on: [push, pull_request] + +jobs: + test: + + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + php: [8.0, 7.4, 7.3] + laravel: ["^9.0", "^8.0"] + dependency-version: [prefer-lowest, prefer-stable] + exclude: + - laravel: "^9.0" + php: 7.4 + php: 7.3 + + name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + extensions: curl, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, iconv + coverage: none + + - name: Install dependencies + run: | + composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update + composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction + + - name: Execute tests + run: vendor/bin/phpunit From 8fe3a4d3711944918d97047b13e08690746cacc1 Mon Sep 17 00:00:00 2001 From: Simon Benjamin <163124+Benjaminhu@users.noreply.github.com> Date: Wed, 4 Jun 2025 17:30:49 +0200 Subject: [PATCH 3/7] [info] run github tests - fix exclude --- .github/workflows/run-tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 4a7b93fa..b8369a7f 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -15,6 +15,7 @@ jobs: exclude: - laravel: "^9.0" php: 7.4 + - laravel: "^9.0" php: 7.3 name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} From 6363b05740d6e3c8467e2737e59999cb8f20c0f9 Mon Sep 17 00:00:00 2001 From: Simon Benjamin <163124+Benjaminhu@users.noreply.github.com> Date: Wed, 4 Jun 2025 17:38:47 +0200 Subject: [PATCH 4/7] [info] run github tests - fix mockery - Mockery does not support PHP 8.0 and above until v1.4.1. [error] PHP Fatal error: Type mixed cannot be marked as nullable since mixed already includes null in vendor/mockery/mockery/library/Mockery/Loader/EvalLoader.php(34) : eval()'d code on line 1005 --- .github/workflows/run-tests.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index b8369a7f..c8ffa26e 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -17,6 +17,8 @@ jobs: php: 7.4 - laravel: "^9.0" php: 7.3 + - php: 8.0 + dependency-version: prefer-lowest name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} From ded9b49cb7e0ce331c91d67d2222b52d899edc5b Mon Sep 17 00:00:00 2001 From: Simon Benjamin <163124+Benjaminhu@users.noreply.github.com> Date: Wed, 4 Jun 2025 17:44:08 +0200 Subject: [PATCH 5/7] [info] run github tests - fix mockery - exclude broken only Laravel 9.0 & PHP 8.0 combinations --- .github/workflows/run-tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index c8ffa26e..e2da703a 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -17,6 +17,7 @@ jobs: php: 7.4 - laravel: "^9.0" php: 7.3 + - laravel: "^9.0" - php: 8.0 dependency-version: prefer-lowest From 980130bead2e5673425597c6a064908afdb850d7 Mon Sep 17 00:00:00 2001 From: Simon Benjamin <163124+Benjaminhu@users.noreply.github.com> Date: Wed, 4 Jun 2025 18:25:21 +0200 Subject: [PATCH 6/7] [info] run github tests - fix mockery - exclude broken only Laravel 9.0 & PHP 8.0 combinations v2 --- .github/workflows/run-tests.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index e2da703a..d5c2dda9 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -12,12 +12,14 @@ jobs: php: [8.0, 7.4, 7.3] laravel: ["^9.0", "^8.0"] dependency-version: [prefer-lowest, prefer-stable] + include: + - php: 8.0 + dependency-version: prefer-stable exclude: - laravel: "^9.0" php: 7.4 - laravel: "^9.0" php: 7.3 - - laravel: "^9.0" - php: 8.0 dependency-version: prefer-lowest From d8a50707152a6d091620317361464c55fbc84dba Mon Sep 17 00:00:00 2001 From: Simon Benjamin <163124+Benjaminhu@users.noreply.github.com> Date: Wed, 4 Jun 2025 18:32:53 +0200 Subject: [PATCH 7/7] [info] run github tests - fix mockery - exclude broken only Laravel 9.0 & PHP 8.0 combinations v3 --- .github/workflows/run-tests.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index d5c2dda9..f81467b9 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -12,15 +12,12 @@ jobs: php: [8.0, 7.4, 7.3] laravel: ["^9.0", "^8.0"] dependency-version: [prefer-lowest, prefer-stable] - include: - - php: 8.0 - dependency-version: prefer-stable exclude: - laravel: "^9.0" php: 7.4 - laravel: "^9.0" php: 7.3 - - php: 8.0 + - laravel: "^9.0" dependency-version: prefer-lowest name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }}