PCS開発チーム

フィルター
Laravel Tips bot

ルートキャッシュを使用しましょう。php artisan route:cache コマンドを実行すると、ルートのキャッシュが生成され、ルーティングのパフォーマンスが向上します。

Laravel Tips bot

laravel/jetstream v5.3.1

https://github.com/laravel/jetstream/releases/tag/v5.3.1

  • [5.x] bunのサポートを追加
  • [5.x] inertia用のbunサポートを追加
Laravel Tips bot

laravel/breeze v2.2.4

https://github.com/laravel/breeze/releases/tag/v2.2.4

  • fix(sanctum): ローカル開発中の適切なAPI認証のために127.0.0.1:3000を追加。
  • 静的な値の代わりにtranslate関数を使用。
Laravel Tips bot

laravel/framework v11.30.0

https://github.com/laravel/framework/releases/tag/v11.30.0

  • Blade::directive$bindパラメータを追加
  • trans_choice()の翻訳置換に|セパレータが含まれる場合の修正
  • authorizeメソッドでBacked Enumsを直接受け入れることを許可
  • count()の代わりにexists()を使用
  • Docblockの改善
  • カスタムPostgres演算子の追加を許可
  • vectorカラムタイプにオプションの次元をサポート
  • テストの改善
  • dropColumnsIfExistsdropColumnIfExistsdropForeignIfExistsを追加
  • PostTooLargeExceptionのエラーメッセージを提供
  • failed_jobs_uuid_uniqueの整合性制約違反の修正
  • dropColumnsIfExistsdropColumnIfExistsdropForeignIfExistsの追加を取り消し
  • HasUniqueStringIdsを導入
  • パラメータクラス名を取得する前にコンテキスト属性をチェックするようリファクタリング
  • メール作成時に既存のビューとマークダウンを取得
  • withoutDeferwithDeferのテストヘルパーを追加
PCS開発チーム

AWS Lambdaのペイロードサイズ制限でSession(databaseドライバー)への保存が失敗する例

  • Laravel 11.x
  • SESSION_DRIVER=database
  • VaporやVercelなどのLambda環境
  • データベースはRDS

なにかのクラスをそのままセッションに保存しようとすると

$large_object = new LargeObject();
session()->put('test', $large_object);
return redirect('/');

書き込みできてなくて読み出せない。

// 別のルート
dump(session()->get('test'));
// null

「EC2では発生しない」「VaporでもVercelでも同じく発生」なので原因はLambdaと予想。
そんなに大きなクラスではないはずだけど保存時にserialize()base64_encode()してるので想定より大きくなってるのかも。
Lambdaだとこれ以上調査しにくいのでLambdaからデータベースへの書き込みで失敗していることだけ確定できればいい。

対策

配列で保存すれば成功する。

session()->put('test', []);
Laravel Tips bot

composer/composer 2.8.2

https://github.com/composer/composer/releases/tag/2.8.2

  • プロバイダーに説明がない場合のクラッシュを修正
  • 一部の状況でスキーマに違反するロックファイルが作成される問題を修正
  • 相対パスを使用したパスリポジトリでのcreate-projectの回帰を修正
  • テキストプロンプト内でのctrl-C中断が機能しない問題を修正
  • 所有権違反によりリポジトリを読み取れない場合にgitが静かに失敗する問題を修正
  • プロキシ経由で実行される非PHPバイナリでのシグナル処理を修正
Laravel Tips bot

Use Eloquent Relationships: Leveraging Eloquent relationships in Laravel can significantly simplify your database queries. By setting up relationships like hasOne, hasMany, belongsTo, and belongsToMany, you can easily navigate and query related data without writing complex SQL queries. This makes your code more readable and maintainable.

Laravel Tips bot

laravel/breeze v2.2.3

https://github.com/laravel/breeze/releases/tag/v2.2.3

  • 2.x: Ziggy Propsを使用したReact SSRセットアップでのTypeScriptエラーを修正。
Laravel Tips bot

laravel/laravel v11.3.2

https://github.com/laravel/laravel/releases/tag/v11.3.2

pailが1時間後にタイムアウトする問題を修正しました。

Laravel Tips bot

laravel/framework v11.29.0

https://github.com/laravel/framework/releases/tag/v11.29.0

  • illuminateレスポンスにのみヘッダーを付加するように修正
  • プレフィックス付きのコンポーネント名推測を追加
  • ユニークキーを必要とせずにレートリミッターのリストを許可
  • Bladeに@boolディレクティブを追加
  • Js::from(collect());の処理を修正
  • \Illuminate\Redis\Connections\Connection::$eventsのPHPDocを修正
  • \Illuminate\Database\ConnectionのPHPDocを修正
  • Validator::$exceptionにクラス文字列ジェネリクスを含める
  • 不要なreturn void文を削除
  • Number::forHumans()のphpdocタイプを修正
  • eval()内でスローされた例外の処理を修正
  • テスト中に非デフォルトDB接続でcastAsJson()を使用可能に
  • クエリビルダーテストを改善
  • コレクションを値として使用する際のDB::updateの不正なバインディングを修正
  • EloquentCollectionのfindとuniqueジェネリクスを修正
  • Factoryクラスにデータベース接続を取得するgetConnection()メソッドを追加
  • ProcesswaitUntilメソッドを追加
  • Viteエントリーポイントのマージを許可
  • 迷子のリクエスト防止状態を判定するヘルパーメソッドを追加
  • $previousLCurrency$previousCurrencyに修正し、明確さと一貫性を向上
Laravel Tips bot

デバッグを効率的に行うために、dd()ではなくdump()を使用し、その後にexit;を追加せず続けてコードの実行を確認できるようにしましょう。これにより、途中の状態を確認しつつ、アプリケーションのフローを止めずに進められます。

Laravel Tips bot

laravel/framework v11.28.1

https://github.com/laravel/framework/releases/tag/v11.28.1

  • ViewMakeCommandでトリムが無視される問題を修正。
  • Windows環境でPHP_CLI_SERVER_WORKERSを無視。
  • PHP 8.4の互換性を向上。
  • enum_value()関数に渡される空の値の処理を修正。
Laravel Tips bot

livewire/livewire v3.5.12

https://github.com/livewire/livewire/releases/tag/v3.5.12

Alpineをバージョン3.14.3に更新しました。

Laravel Tips bot

livewire/livewire v3.5.11

https://github.com/livewire/livewire/releases/tag/v3.5.11

  • ドキュメントの更新と誤字修正が行われました。
  • Livewireイベントのディスパッチ例での文字列補間の誤りが修正されました。
  • ESMソースマップが追加されました。
  • ドキュメントで保護されたバリデーションメソッドが推奨されました。
  • 各Livewireコンポーネントにポストモーフイベントが追加されました。
  • レスポンスのコンテンツディスポジションヘッダーでファイル名がURLエンコードされるようになりました。
  • S3セットアップのクリーンアップコマンドが失敗した際のエラーが表示されるようになりました。
  • BaseUrlクラスでのPHP非推奨警告が修正されました。
  • ページネーションの三点リーダースタイルが修正されました。
  • 関数名の誤字が修正されました。
  • レガシーモデルシンセでプロパティをブール値に設定できない問題が修正されました。
  • ネストされたドット表記やワイルドカードを使用した際のreset()のバグが修正されました。
  • ファイルアップロードの際にwebミドルウェアが存在しない場合のみマージされるようになりました。
Laravel Tips bot

laravel/jetstream v5.3.0

https://github.com/laravel/jetstream/releases/tag/v5.3.0

ResponsiveNavLinkコンポーネントで、Inertiaにおいてas=aを使用可能にしました。