今日は autoconf の要求バージョン引き上げ、オブジェクトハンドラ get_properties_for の導入、flexble heredocに関連した字句解析のバグ修正があった!
ところで最近わりと朝の更新が増えてきたので、「今日は」という出だし、嘘もよいところなのではないか
いや気にしないようにしよう
2018-10-10
petk: Bump minimum Autoconf requirement to 2.68
- https://github.com/php/php-src/commit/0b0d4b5f0d5de7d3172e995c34e951790fedafb5
- [7.3~]
- autoconf の要求バージョンを 2.68 へ引き上げ
- 元々 phpize.m4 で 2.59、configure.ac で 2.64 を要求していた
- が、phpize も中では 2.64 以降のマクロを使っていたりした……
- CentOS 6 は autoconf 2.63 を使うシステムだが、現状で PHP 7.2+ をビルドするにはいずれにせよ 2.68 が必要という話
- autoconf 2.68 は 8 年前にリリースされたバージョン
- ちなみに最新版 2.69 は 6 年前で、最近のディストリビューションだとわりと 2.69 が入ってる奴
- コミット自体は入ってるので、リリース作業の時間は取れないけど死んでるというわけではない、という感じなのかな
petk: [ci skip] Update UPGRADING about Autoconf version
- https://github.com/php/php-src/commit/1386b029f9834d9e77a644c58fc1d50006a82e67
- [7.3~]
- ↑の UPGRADING への追記
nikic: Introduce get_properties_for() handler
- https://github.com/php/php-src/commit/7ec8087f8097955bfc6b97d1a916c6ffc39908f4
- オブジェクトハンドラ get_properties_for() を追加
- 配列へのキャストやシリアライズといった用途フラグを渡すと、オブジェクトのハッシュテーブルを適切に取ってくる
- PR:3579 から経緯が追える
- 型付プロパティを念頭に、可視性チェックの最適化で prop_info を効率的に見つける機構、という PR:3573 が別にあった
- そっちで ArrayObject のテストがこけるという問題が出た
- ArrayObject が master でなんかバグいぞ、というので PR:3574 が出て、その中で「必要なのは用途フラグ取れて部分的に挙動をオーバーライドできる get_properties_for() だ!」となり、 PR:3579 が別立てされマージされた形
nikic: Migrate ext/date to get_properties_for where appropriate
- https://github.com/php/php-src/commit/1270e5008a1828863a7f96873dff002680eac5c5
- ext/date で get_properties_for を使うよう修正
- DateTime を var_dump() したりするとアクセスできるプロパティが増えるという #75232 が修正されている
nikic: Don't overload get_properties for ArrayObject
- https://github.com/php/php-src/commit/a5fa51afbbd87bedeb1c5fd7c9a6cf3c971ab14c
- ext/spl の ArrayObject で get_properties_for を使うよう修正
nikic: Add UPGRADING notes
- https://github.com/php/php-src/commit/5a679341b8ffe049916edb1dae196a847a4edb1d
- ↑の get_properties_for 関連の修正内容を UPGRADING へ追記
nikic: Specify timezone in test
- https://github.com/php/php-src/commit/4f4d0eccafedfc454b9af1d2e8411aabfccfe318
- 先の ext/data の修正で #75232 を直した際にテストでタイムゾーンを指定していなかったのを修正
nikic: Fixed bug #76991
- https://github.com/php/php-src/commit/01948f20b8ae8eed252177f63bf2c9c11a8f1b94
- [7.3~]
- flexble heredoc 関連のバグで、字句を変な位置で切ってしまう問題の修正