diff options
author | Nikita Popov <nikic@php.net> | 2016-08-15 22:59:41 +0200 |
---|---|---|
committer | Nikita Popov <nikic@php.net> | 2016-08-15 23:01:19 +0200 |
commit | 0374a98e1457105d884be324518a5f6a8c283234 (patch) | |
tree | c98d9fdaf4d74d349406785351fea246292e3c48 /UPGRADING.INTERNALS | |
parent | 777d11a8cce6a671f4d48cf0e7d5e18c90e1a394 (diff) | |
download | php-git-0374a98e1457105d884be324518a5f6a8c283234.tar.gz |
Scrub UPGRADING and UPGRADING.INTERNALS
There were already some master-only entries in there -- I hope I
didn't remove anything that was supposed to be there.
[skip ci]
Diffstat (limited to 'UPGRADING.INTERNALS')
-rw-r--r-- | UPGRADING.INTERNALS | 64 |
1 files changed, 2 insertions, 62 deletions
diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS index 1a922e6294..1444589a50 100644 --- a/UPGRADING.INTERNALS +++ b/UPGRADING.INTERNALS @@ -1,10 +1,7 @@ PHP 7.1 INTERNALS UPGRADE NOTES -0. Wiki Examples 1. Internal API changes - e. Codepage handling on Windows - f. Path handling on Windows - g. SAPI logging + a. 2. Build system changes a. Unix build system changes @@ -12,68 +9,11 @@ PHP 7.1 INTERNALS UPGRADE NOTES 3. Module changes -================ -0. Wiki Examples -================ - -The wiki contains multiple examples and further explanations of the internal -changes. See: https://wiki.php.net/phpng-upgrading - - ======================== 1. Internal API changes ======================== - e. Codepage handling on Windows - - A set of new APIs was introduced, which allows to handle codepage - conversions. The corresponding prototypes and macros are contained - in win32/codepage.h. - - Functions with php_win32_cp_* signatures provide handling for various - codepage aspects. Primarily they are in use at various places in the - I/O utils code and directly in the core where necessary, providing - conversions to/from UTF-16. Arbitrary conversions between codepages - are possible as well, whereby UTF-16 will be always an intermediate - state in this case. - - For input length arguments, the macro PHP_WIN32_CP_IGNORE_LEN can be - passed, then the API will calculate the length. For output length - arguments, the macro PHP_WIN32_CP_IGNORE_LEN_P can be passed, then - the API won't set the output length. - - The mapping between encodings and codepages is provided by the predefined - array of data contained in win32/cp_enc_map.c. To change the data, - a generator win32/cp_enc_map_gen.c needs to be edited and run. - - f. Path handling on Windows - - A set of new APIs was introduced, which allows to handle UTF-8 paths. The - corresponding prototypes and macros are contained in win32/ioutil.h. - - Functions with php_win32_ioutil_* signatures provide POSIX I/O analogues. - These functions are integrated in various places across the code base to - support Unicode filenames. While accepting char * arguments, internally - the conversion to wchar_t * happens. Internally almost no ANSI APIs are - used, but directly their wide equivalents. The string conversion rules - correspond to those already present in the core and depend on the current - encoding settings. Doing so allows to move away from the ANSI Windows API - with its dependency on the system OEM/ANSI codepage. - - Thanks to the wide API usage, the long paths are now supported as well. The - PHP_WIN32_IOUTIL_MAXPATHLEN macro is defined to 2048 bytes and will override - the MAXPATHLEN in files where the header is included. - - The most optimal use case for scripts is utilizing UTF-8 for any I/O - related functions. UTF-8 filenames are supported on any system disregarding - the system OEM/ANSI codepage. - - g. SAPI logging - The log_message callback in the SAPI struct was extended with the severity - argument. This allows SAPI modules to implement mapping between PHP and - corresponding server error levels. A reference mapping implementation - can be found in apache2handler. - + a. ======================== 2. Build system changes |