この記事は CakePHP Advent Calendar 2018 19日目の記事です。
普段利用しているプロジェクトで「こんなことした」ということが書けたらよかったのですが、 最近はあまりCakePHPプロジェクトに関われなかったため CakePHPコアと関連リポジトリへ今年コミットした内容 を書きます。
この記事の狙い
「自分もPR出してみよう」と思ってくださる方が増えることです。
特にドキュメントは「書いてあることと違う」となってしまうとフレームワークに対する不信感にもなってしまうので。
私は自分が好んで使っているフレームワークだったこともあり、「自分の対応が他の人の役に立てば良いな」と思って参加しています。
今年やったこと
cakephp/cakephp
CakePHPコアです。
以前こちらで自分のPRが初めてマージされたことを書きました。
今年は1件でしたが以下修正を行いました。
コントローラのテストを書いていた際「assertResponseEquals
があるのにassertResponseNotEquals
はないんか」って思ったことがきっかけでした。
PR作成時に「なんで定義されてないん?」って聞いてますけど特に回答無くマージされていました(特に理由はなかったのかもしれませんね)。
本来リリースされなかったであろう3.7のbeta1に含まれています。
cakephp/bake
CakePHPプロジェクトを利用する人にはおなじみのCLIツールで、コントローラ・モデル・テストコードなどを自動生成してくれます。
こちらにも1件PRを出し、無事マージされました。
3.6 でTableRegistry
の静的メソッドが非推奨になったので、これに追従しました。
自分のプロジェクトではこの対応はすべて済ませていたのですが、bake
を使って生成したテストコードにTableRegistry::get()
があったため一式対応しました。
実は過去にも 3.4 で非推奨になったものを対応したことがあります。
cakephp/app
プロジェクトのひな形です。
3.5 からCakePHPにも.env
が導入されたのですが、ここにAPP_DEFAULT_TIMEZONE
を追加しました。
個人的には.env
があるなら環境変数はそこに集約して、app.default.php
はapp.php
としてリポジトリに含めて良いんじゃないかと思っています。
cakephp/docs
Cookbook という CakePHP のドキュメントです。
おもに日本語の誤表記修正ですが、いくつか元の説明やコードがおかしいものもありました。
- modify: Type mistake of `ja/global-constants-and-functions.rst`
- modify: Type mistake of `ja/views.rst`
- modify: Folder::inPath() description.
- [ja] Remove unnecessary description
- Update commands.rst
- Add shortage of `use` clause
- [ja] Modify: Use namespace `Command` instead of `Shell`
最後に
来年は4.0がリリースされます(さすがにされると思います)。
ここに書いたPRは今年前半のものばかりなので、来年はもう少しコミットしていきたいと思っています。
また、明らかなバグやコアへの追従などだけではなく、Issueで議論されている内容にも参加できたらいいなと思っています。