🔖

Carbon3の変更に気を付けろ!!

2024/10/08に公開

気をつけろ!!

Carbon3からcreateFromTimestampというメソッドはタイムゾーンを指定しないと、デフォルトでUTC時間を返すように変更されたようです!
https://github.com/briannesbitt/Carbon/blob/da64770bf83ac06914418db7df14dadd4ded0212/src/Carbon/Traits/Timestamp.php#L23-L35

Laravel11のアップグレードガイドにも記載されてないし、Carbon3の変更履歴にも記載されていない?ような変更でした
(変更履歴の見方が違うのかなー)

発見の経緯

担当システムで2024年6月にLaravel11にアップグレードを行い、その4ヶ月後にcreateFromTimestampで返ってくる日付がUTCになっていることに気づきました。
社内の別システムからSQS経由で受け取る日付だったので、リクエストする側が変更になったのかと思いましたが、このメソッドが原因だったようです!
一緒に調査してくれたテックリードが原因を特定してくれましたが、その時にどう思考していったかも残してくれたので今後の調査の際に同じ思考ができるようにしようと思いました!感謝

その他の変更点

Carbonのドキュメントに変更点がまとまっているのでこっちを確認したほうが良さそうです
https://carbon.nesbot.com/docs/#api-carbon-3

所感

英語のドキュメントもちゃんと読も

Discussion