master
Add mbstring support for GB18030-2022 text encoding
New internal interface for fast text conversion in mbstring
Implement fast text conversion interface for Base64
mbstring no longer provides 'long' substitutions for erroneous input bytes
Migrate more SKIPIF -> EXTENSIONS (#7139)
mb_decode_numericentity decodes valid entities which are truncated at end of string
Remove unnecessary mbstring skipifs
ext/mbstring: Remove ZPP tests
Deprecate use of mbstring to convert text to Base64/QPrint/HTML entities/etc
Migrate SKIPIF -> EXTENSIONS (#7138)
Add test cases for mb_strcut
Implement mb_detect_encoding using fast text conversion filters
Run mb_send_mail tests on Windows, too
ext/mbstring: Use `internal_encoding` INI setting instead of `mb_internal_encoding()` in tests (#19663)
Port mbstring to use EXTENSIONS
Update request startup error messages
Add some missing EXTENSIONS sections to misc tests
mb_detect_encoding will not return non-encodings
Add EXTENSIONS section
Fix #81693: mb_check_encoding(7bit) segfaults
Implement conditional casing for Greek letter sigma when title-casing text
Reindent phpt files
Merge branch 'PHP-8.1' into PHP-8.2
Fix new conversion filter for CP50220 (multi-codepoint kana at end of buffer)
Combine CJK encoding conversion code in a single source file
Use "must not" instead of "cannot" wording
Align hex dumps in mbstring unit test failure message for easy comparison
Fix failing 32-bit mbstring tests (#13069)
ext/standard: Deprecate passing string which are not one byte long to ord() (#19440)
Use pakutoma's encoding check functions for mb_detect_encoding even in non-strict mode
Fix phpGH-10648: add check function pointer into mbfl_encoding
New test case from ed0c0df exercises the code it was intended to
Fix segfault in mb_strrpos/mb_strripos with ASCII encoding and negative offset
Fix GH-11476: crash with count_demerits negative-size-param
Fix segfault caused by use of 'pass' encoding when mbstring converts multipart form POST data
Fix GH-13815: mb_trim() inaccurate $characters default value (#13820)
Fix GH-15824 mb_detect_encoding() invalid "UTF8" (#15829)
Fix GH-16261: Reference invariant broken in mb_convert_variables()
Fix GH-16360 mb_substr overflow on start and length arguments.
Fix GH-17503: Undefined float conversion in mb_convert_variables
Fix GH-17989: mb_output_handler crash with unset http_output_conv_mimetypes
Fix GH-18901: integer overflow mb_split
Fix GH-19397: mb_list_encodings() can cause crashes on shutdown
Merge branch 'PHP-8.0' into PHP-8.1
Fix GH-9008: mb_detect_encoding(): wrong results with null $encodings
Fix GH-9248: Segmentation fault in mb_strimwidth()
Fix regression test for GH-9535 on PHP-8.2+
Remove XFAIL from test cases for mb_strcut when used with JIS or ISO-2022-JP encoding
Add regression test for problem with mb_encode_mimeheader reported as GH-9683
Fix new conversion filter for HTML entities
Fix legacy conversion filter for HZ
Merge branch 'PHP-8.1'
Add more tests for mbstring encoding conversion
Fix problems with ISO-2022-KR conversion
Deprecate calling mb_check_encoding() without argument
QA -mb_convert_encoding_array - error for object item in array
Allow 'h' and 'k' flags to be combined for mb_convert_kana
mb_parse_str, mb_http_input, and mb_convert_variables use fast text conversion code for automatic encoding detection
Implement mb_decode_mimeheader using fast text conversion filters
mb_decode_mimeheader obeys RFC 2047 regarding underscores and QPrint encoding
ext/mbstring: move another test case that only works on 64 bits
ext/mbstring: Check conversion map only has integers
Fix infinite loop when mb_detect_encoding is used on UTF-8 BOM
Flush filter during non-strict encoding detection
Adapt regression test
mb_encode_mimeheader does not crash if provided encoding has no MIME name set
ext/mbstring: move unsigned 32 bit integer tests to a new test (#12891)
Fix handling of references in zval_try_get_long()
Fix skip clause
ext/mbstring: Refactor mb_get_info()
Return value of mb_get_info can be NULL
ext/mbstring: Always throw ValueErrors for invalid mb_http_input() type
QA - mb_http_input - function returns FALSE for type 'L' or 'l'
Reintroduce legacy 'SJIS-win' text encoding in mbstring
Fix uaf of MBSTRG(all_encodings_list)
mb_scrub does not attempt to scrub known-valid UTF-8 strings
Fix legacy conversion filter for ISO-2022-KR
Fix redundant double dash in mbstring test output
Implement mb_str_split using fast text conversion filters
Add unit tests for mb_str_split/mb_substr on MacJapanese encoding
Add specialized implementation of mb_strcut for GB18030
Deprecate passing a negative width to mb_strimwidth()
mb_str{i,}pos does not match illegal byte sequences against occurrences of mb_substitute_char
Merge branch 'PHP-8.2'
Character indices used by mb_strpos and mb_substr have same meaning, even on invalid strings
Implement Unicode conditional casing rules for Greek letter sigma
Fix bug in mb_get_substr_slow (sometimes outputs wrong number of characters)
Add mb_trim function
Legacy conversion code for '7bit' to '8bit' inserts error markers
Fix new conversion filter for QPrint (same order of check as legacy code)
Restore backwards-compatible mappings of U+005C and U+007E to SJIS-2004
Restore backwards-compatible mappings of 0x5C and 0x7E in SJIS
SJIS-Mobile#SOFTBANK string can end immediately after special escape sequence
Implement fast text conversion interface for SJIS-mac
Add another test for UCS-2 text conversion
Fix problem with CP949 conversion when 0xC9 precedes byte lower than 0xA1
ext/mbstring: Update to Unicode 17.0 (#19796)
Add tests to document behavior of UTF7-IMAP conversion in obscure corner case
Error handling for UTF-8 complies with WHATWG specification
Adjust number of error markers emitted for truncated UTF-8 code units
Fix GH-11992: utf_encodings.phpt fails on Windows 32-bit
Fix new conversion filter for UUEncode