php-master-changes 2019-04-08

今日は C89 で標準化されているライブラリの不要なチェックの削除、ドキュメントの更新、ビルドシステムのリファクタリング、コンパイラの警告が出ていた箇所の修正、JIT で増えたビルド時生成ファイルの .gitignore への追記、date の関数でタイムスタンプを明示的に指定されていた場合でも time(NULL) の呼び出しがあったのを呼ばないようにする修正、値を返す関数の戻り値をオブジェクトのプロパティへ参照代入しようとする際の挙動修正、parse_ini_string() を INI_SCANNER_TYPED で使った際に SEGV が起きる場合がある問題の修正、laruence のメールアドレスの修正、空の haystack で substr_compare() の挙動が他関数と一貫性がない問題の修正、stream_select() でキーが保持されない問題の修正、FILTER_VALIDATE_FLOAT のフィルタに最小/最大のオプションを付けられるようにする修正、XmlParser を内部的にリソースからオブジェクトに変更する修正があった！

# 2019-04-08
## petk: Remove checks for locale.h, setlocale, localeconv
- https://github.com/php/php-src/commit/e06836a1a345d0f6975036dc6c0cf7596aa07031
- [7.4~]
- locale.h, setlocale, localeconv の存在チェックを削除
- C89 で標準化されているため

## petk: [ci skip] Mention docs dir
- https://github.com/php/php-src/commit/fbb8ada0096c08ec96f991a934435527e0f754b3
- [7.4~]
- CONTRIBUTING.md で、[先日新設した](https://qiita.com/sj-i/items/dadd77bb5f9d3b4cd498#petk-move-readme-files-to-a-dedicated-docs-directory) docs ディレクトリの説明を追記

## petk: Add AS_HELP_STRING to phpdbg options
- https://github.com/php/php-src/commit/6acba73876e8d0786668a7f84e8ffd90416fc57b
- [7.4~]
- sapi/phpdbg で、configure オプションのヘルプメッセージについて [AS_HELP_STRING](https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Pretty-Help-Strings.html) での指定に移行

## petk: Add AS_HELP_STRING to Opcache JIT option
- https://github.com/php/php-src/commit/6d8d48498eadd982213b0a3197b3c01012f7725f
- ext/opcache で、configure オプションのヘルプメッセージについて [AS_HELP_STRING](https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Pretty-Help-Strings.html) での指定に移行

## devnexen: Fix few compiler warnings.
- https://github.com/php/php-src/commit/914b27acb708dfe9f5c5be6acbf1d8de70ffc00f
- コンパイラの警告が出ていた箇所の修正

## petk: [ci skip] Ignore Opcache Jit generated files
- https://github.com/php/php-src/commit/6515c368c1b57a7ce38e0bd2ae1d623c93aaa3ab
- .gitignore へ、JIT で増えるようになったビルド時の生成ファイルを追記

## nikic: Avoid time(NULL) call if explicit timestamp given
- https://github.com/php/php-src/commit/c708c4b40443f472ef99f72abc9f7080f3ca7923
- [7.4~]
- ext/date の関数で、タイムスタンプを明示的に指定されていた場合でも time(NULL) の呼び出しがあったのを呼ばないよう修正

## nikic: Fix invalid function by-ref prop assign handling
- https://github.com/php/php-src/commit/e86820eb568bf1badd94b6cc9fa958119cc06bb4
- [7.4~]
- 値を返す関数の戻り値をオブジェクトのプロパティへ参照代入しようとしたら NOTICE にして NULL を突っ込むよう修正、かな

## nikic: Fixed bug [#77844](https://bugs.php.net/bug.php?id=77844)
- https://github.com/php/php-src/commit/eea61cda7df1466a1f40a17c21b65901c1c68ce0
- [7.2~]
- [parse_ini_string()](https://www.php.net/manual/ja/function.parse-ini-string.php) を INI_SCANNER_TYPED で使った際、SEGV が起きる場合がある問題の修正

## laruence: Change to php.net mail address
- https://github.com/php/php-src/commit/6322b6ffe773565ba53924e74f6024df50ee4b55
- 自分のメールアドレスを zend.com のものから php.net のものへ修正

## nikic: Fixed bug [#77853](https://bugs.php.net/bug.php?id=77853)
- https://github.com/php/php-src/commit/d7b5954f2818aff6db29a995f407797a7902f38f
- [7.2~]
- 空の haystack で [substr_compare()](https://www.php.net/manual/ja/function.substr-compare.php) の挙動が他関数と一貫性がない問題の修正

## twose: Preserve keys in emulate_read_fd_set()
- https://github.com/php/php-src/commit/bdac9ef10d90997f9576564dde693cbef6594142
- [7.2~]
- [stream_select()](https://www.php.net/manual/ja/function.stream-select.php) でキーが保持されない問題の修正
- emulate_read_fd_set() で非エミュレート版と同様にキーを保持するよう修正している
- [#53427](https://bugs.php.net/bug.php?id=53427)

## berbeflo: Added range options to the float validation filter
- https://github.com/php/php-src/commit/07df6594b5c71b176b376aba8007bc33616bbfb0
- [7.4~]
- ext/filter で、FILTER_VALIDATE_FLOAT のフィルタに最小/最大のオプションを付けられるよう修正

## nikic: ext/xml: Use object instead of resource
- https://github.com/php/php-src/commit/e35a3cb28cd663489b27630e4dca2a5e61898f2e
- ext/xml で、XmlParser を内部的にリソースからオブジェクトに変更
- 元々 [#76874](https://bugs.php.net/bug.php?id=76874) があった
- API 変更はないが、内部的にちゃんと GC できるようになるみたい
- xml_parser_free() の呼び出しは不要になった

## nikic: Fix get_gc signature
- https://github.com/php/php-src/commit/5db671dcd01cd0b68b49964dfcb2b8a2e1ab0454
- ext/xml で、get_gc の xml_parser_get_gc() のシグネチャを修正（zval をとるものから zend_object をとるものへ）