Skip to content

feat!: move to Laravel 12 and core-api 2.0 - #173

Merged
roncodes merged 9 commits into
release/v0.5.0from
chore/laravel-12
Nov 6, 2026
Merged

roncodes merged 9 commits into
release/v0.5.0from
chore/laravel-12

Conversation

@roncodes

@roncodes roncodes commented Nov 6, 2026 •

Copy link
Copy Markdown
Member

Moves the server package to Laravel 12 for the next minor release, v0.5.0, into release/v0.5.0. It goes with fleetbase/fleetbase release/v0.8.0.

What changed

  • fleetbase/core-api ^2.0, replacing the old range. Also fleetbase/fleetops-api ^0.7.0.
  • illuminate/* and laravel/framework ^12.69, PHP ^8.2, plus the dependency majors that go with core-api 2.0 where this package uses them: fcm ^5.1, apn ^5.5, twilio channel ^4.1, milon/barcode ^13, geocoder-laravel ^13, cknow/laravel-money ^8, Sanctum ^4.
  • Dev: Pest ^3 (PHPUnit 11), Testbench ^10, collision ^8, var-dumper ^7, PHPStan ^2 / Larastan ^3 where used.
  • No security advisory exceptions. composer audit on this branch reports no advisories, and there is no policy.advisories or audit.ignore. The one remaining audit note is the abandoned hammerstone/fast-paginate, which core-api requires.
  • Notification dispatcher fakes take sendNow($notifiables, $notification, ?array $channels = null) (5 fakes).
  • The order chat fake disk gains path(), putFile() and putFileAs().
  • pest-bootstrap.php sets the ISO currency list for cknow/laravel-money 8.
  • Drops the policy.advisories ignore for the illuminate/mail advisory from composer.json.

Prep work merged in

The branch head is the complete Laravel 12 state, ready to link locally.

Depends on, in merge order

  1. feat!: move to Laravel 12 and Sanctum 4 core-api#333, tagged v2.0.0
  2. fleetbase/fleetops-api tagged v0.7.0
  3. This PR, then the release PR release/v0.5.0 → main.

CI stays red until those are tagged, because Composer can't resolve fleetbase/core-api ^2.0 or the extension versions above from Packagist yet. The fork packages core-api needs are released: laravel-mysql-spatial 2.0.0, twilio 6.0.0 and countries 0.9.0.

Tested locally

Against core-api#333 (feat/laravel-12) through a Composer path repository, with the sibling extension branches linked the same way, on PHP 8.2 and Laravel 12.71.

  • 1,174 tests pass (whole suite; it can't run per file because of shared helpers). Coverage step passes at 100% (13,237/13,237 lines).
  • composer audit: no advisories.

Not run

  • Nothing against live Stripe, Twilio, Firebase/FCM, APNs or other third-party APIs. Package majors used at runtime but not exercised live: twilio channel, barcode, geocoder, money.
  • No MySQL migration run here; the tests use SQLite.
  • Not tested on Laravel 13, although core-api allows it.

Do not merge before core-api v2.0.0 is tagged.

Pins every diffIn* call as an explicit absolute or signed integer so results read the same on Carbon 2 and 3. Carbon 2 values are unchanged; tests pin direction and type at the priority sites.
Laravel 11+ ships a native Request::array(), which wins over core-api's macro of that
name and stops it splitting comma-separated values. Needs core-api with inputArray.
@roncodes
roncodes merged commit 0a2c8a8 into release/v0.5.0 Nov 6, 2026
3 of 4 checks passed
@roncodes
roncodes deleted the chore/laravel-12 branch November 6, 2026 05:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant