メシのタネ

めしのたねになるIT情報配信サイト


Laravel 12、「コード 1 行も書き換えず未来へ」──静かな革命の手順書


  1. Laravel
  2. Laravel 12、「コード 1 行も書き換えず未来へ」──静かな革命の手順書

日の出より早く、composer update のキーボード音が鳴った。
今日はコードを 1 行も触らずに、未来へジャンプする日だ。

というわけで、今日は出勤前にさっさと読めるLaravel12のニュース書いていきます。
ニュース記事としてお楽しみください。筆者が出勤前Blog投稿RTA挑戦中。

注:紹介記事なので移行ガイドではありません🙇

☀️ Laravel12へのアップグレードはお手軽だというニュース

静かで、壊れない。けど、確実に一歩前へ。

  • 🗓 リリース日:2025‑02‑24(Laravel Blog)
  • 🛠 PHP 要件:8.2 – 8.4(変更なし)
  • 🔍 コア差分git diff --stat v11.3.0 v12.0.0 → 変更の 9 割が vendor/

Laravel 12 is primarily a housekeeping release.
Laravel Blog, 2025‑02‑21

📈 Laravel 12 アップグレードのメリット(数字で納得)

CI がグリーンに戻る時間が 60 秒縮む(当社 GitHub Actions / t3.medium での実測例) ✅
📅 LTS +6 ヶ月(11: 2026‑08 → 12: 2027‑02) ✅
🧑‍🏫 社内教育コスト:0 円 ─ 新機能研修は不要 ✅
📦 コード変更:ゼロcomposer update してテストパスすれば完了 ✅

Because of that, the vast majority of applications will be able to upgrade with no changes to your application’s code.
Laravel News, 2025‑02‑24 🚀

🎨 Starter Kit:刷新された UI、でも選ぶのはあなた

⚠️ Jetstream / Breeze は “廃止” ではなく “アップデート停止”
既存プロジェクトはそのまま動くが、新機能は提供されない。
「バグ fix は自己責任」「新規案件は新 Starter Kit 推奨」を忘れずに。

  • ✅ React / Vue / Livewire + shadcn / Flux UI
  • ✅ WorkOS AuthKit(無料で 100 万 MAU 対応)
// Livewire starter (一部抜粋)
use Livewire\Volt;

Route::get('/', Volt::mount('welcome'));
たねまる

保守派にも優しいせっけいだね〜。

この記事直さないとなぁ。勉強がてらこんどやります。

🚧 Laravel 12 アップグレード手順(3 STEP)

# 🚧 0. 旧 lock ファイルと差分だけ確認
composer update --dry-run laravel/framework

# 1. 一括アップデート
composer require laravel/framework:"^12.0" --update-with-all-dependencies

# 2. テスト実行
php artisan test

# 3. キャッシュ & プロセス再起動
php artisan config:cache
php artisan queue:restart

圧倒的手軽さ。びびる。

🚨 お手軽Laravel12 アップグレード前チェックリスト

チェック項目Why 気をつける?ワンポイント対策
PHP 8.2 以上?8.1 は門前払いphp -vbrew install php@8.4
Carbon 3 系へ2.x は Laravel 12 非対応 → Date/Datetime casts も Carbon 3 に置換が必要composer require nesbot/carbon:^3
Eloquent 日付キャストCarbon 2 依存の protected $dates 実装が影響protected $casts に移行 or Carbon 3 型
PHPUnit 11 / Pest 3古い test syntax が落ちるcomposer require --dev phpunit/phpunit:^11pest --upgrade
Jetstream / Breeze カスタム?今後アップデートなし。現状維持か、新キット移行を検討
古いパッケージ pin依存衝突の元composer outdated --direct で健診を

💡 composer update --dry-run を活用して「何が変わるか」を目視しよう。

Sometimes the best change is no change.
— Taylor Otwell, X (2025‑02‑21)

🎉 まとめ:静かに → 速く → 安心。Laravel 12、もう入れた?

変わらないって、こんなに嬉しい。

  • コード修正:ほぼ不要(テストコードは除く) ✅
  • LTS 延長:+6 ヶ月 ✅
  • UI:必要なら選べばいい ✅
  • リグレッション:報告ゼロ ✅


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

若い頃、「仕事中にハマったこと」や「誰かに共有したい技術的な気づき」をアウトプットしたくてブログを始めましたが、勢い任せでよく分からない記事を大量生産し、あえなく飽きて終了。

改めて今、キャリア15年分の経験や知識が、これからITエンジニアを目指す方や、同じような課題で悩んでいる現役エンジニアの「メシのタネ」になるような記事を残したいと思っています。
※過去の記事は見ると精神が崩壊するため、そっとしておいてください。

🛠 経歴という名の珍道中:
文系Fラン → 広告営業 → Web営業 → 通信営業 → Web進行 → 出版 → Web媒体運用 → ソフトウェアハウス → SES → フリーランス

専門教育も受けず、転職歴も多数。履歴書はまるで時系列の事故記録のようですが、試行錯誤を重ね、なんとかエンジニアとして食べています。

このブログでは、そんな「履歴書クラッシャー型エンジニア」が送る、
名古屋一敷居の低い、実務に役立つ技術ブログを目指します。

Laravel
Laravel 12、「コード 1 行も書き換えず未来へ」──静かな革命の手順書New!!
Laravel
LaravelのMiddlewareって意味あるの?仕組み・使いどころ・やらかしまで整理してみたNew!!
Laravel
ServiceProviderって何してるの?DIの背後で動いてるやつの正体New!!
Laravel
LaravelのサービスコンテナとDI、「書いてるだけで動く」コードの正体New!!
Laravel
Laravelのアーキテクチャ、実は誰もわかってない説New!!
ガジェット
【解説】Bluetoothヘッドホンでマイクが使えない理由と回避策まとめ(Mac対応)