#
866aa12b |
| 04-Dec-2023 |
Saki Takamachi <34942839+SakiTakamachi@users.noreply.github.com> |
ext/pdo: Fixed PDO::setAttribute() and PDO::getAttribute() (#12793)
|
#
6edbbc1c |
| 25-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement GH-12385: flush headers without body when calling flush() Closes GH-12785.
|
#
fde41bc7 |
| 16-Nov-2023 |
Daniil Gentili |
Report fatal error if JIT cannot be enabled Closes GH-12403
|
#
fd3a8656 |
| 24-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
[ci skip] UPGRADING
|
#
d3c26737 |
| 24-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
[ci skip] NEWS and UPGRADING for mb_*trim
|
#
1e66e6ae |
| 20-Nov-2023 |
Jakub Zelenka |
Revert incomplete PG pipeline addition Closes GH-12735
|
#
76582205 |
| 17-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Improve performance of mbfl_name2encoding() by using perfect hashing (#12707) mbfl_name2encoding() uses a linear loop through the encodings, comparing the name one by one, which is very
Improve performance of mbfl_name2encoding() by using perfect hashing (#12707) mbfl_name2encoding() uses a linear loop through the encodings, comparing the name one by one, which is very slow. For the benchmark [1] just looking up the name takes about 50% of run-time. By using perfect hashing instead, we no longer have to loop over the list, and the number of string comparisons is reduced to just a single one. The perfect hashing table is generated using GNU gperf and amended manually to fit in with mbstring and manually changed to reduce the cache size. [1] https://github.com/php/php-src/issues/12684#issuecomment-1813799924
show more ...
|
#
0f349d4c |
| 16-Nov-2023 |
Jakub Zelenka |
Add POSIX_SC_CHILD_MAX and POSIX_SC_CLK_TCK constants Closes GH-12689
|
#
1bdb0fdd |
| 16-Nov-2023 |
Gina Peter Banyard |
Refactor pcntl_sigprocmask()/pcntl_sigwaitinfo()/pcntl_sigtimedwait() (#11860)
|
#
1492be52 |
| 13-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
[RFC] DOM HTML5 parsing and serialization support (#12111)
|
#
3b68df24 |
| 12-Nov-2023 |
Jakub Zelenka |
Add note to UPGRADING about proc_open changes for invalid command Closes GH-12589
|
#
f150f997 |
| 11-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Improve browscap get_browser performance (#12651) * Split function and use _new variant to avoid redundant checks * Precompute better array size to avoid rehashing * Use ne
Improve browscap get_browser performance (#12651) * Split function and use _new variant to avoid redundant checks * Precompute better array size to avoid rehashing * Use new function to add into array instead of merging into, preventing temporary memory allocations * Convert to regex without separate copy + lowering We're already doing a character-wise loop after lowering, so just lower it character by character instead of looping over it twice and allocating memory. * Use HASH_MAP loop because htab can never be packed This saves additional checks. * Move destructor to more sensible place * Remove now unused browscap_zval_copy_ctor * Use zend_string_release_ex variant where possible * Implement dedicated greedy wildcard matching algorithm This avoids compiling, allocating and caching regexes and should run in the same complexity. * Cache previous length instead of repeatedly recomputing it * Add additional optimization to wildcard * matching * Move cheap checks to the callsite The function prologue and epilogue have a stupidly high overhead for those 2 simple checks at the start. We can't always-inline the reg_compare function because it contains alloca, and the alloca is really important for performance. Instead, move those cheap checks to the call site. * Use specialised loop to avoid unnecessary conversions and checks * Optimize counting loop by taking into account the prefix * Precompute the hash values of known keys * [ci skip] UPGRADING * Code style * Add a note why we have the early-skip checks in the loop
show more ...
|
#
63898008 |
| 10-Nov-2023 |
Dmitriy Degtyaryov |
Fix GH-9344: pgsql pipeline mode proposal. Adding pg_send_flush_request. Fix freeze after next execute pg_send_* on PQgetResult in _php_pgsql_link_has_results. Set nonblocking for pi
Fix GH-9344: pgsql pipeline mode proposal. Adding pg_send_flush_request. Fix freeze after next execute pg_send_* on PQgetResult in _php_pgsql_link_has_results. Set nonblocking for pipelining mode. No flush client buffer in pg_send_* for pipelining mode. Close GH-12644
show more ...
|
#
1ad5f9da |
| 04-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
[ci skip] UPGRADING
|
#
9a973a37 |
| 04-Nov-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Optimize strcspn (#12594)
|
#
ee5fe483 |
| 02-Nov-2023 |
David Carlier |
[ci skip] fix typo in UPGRADING
|
#
d4183c2c |
| 01-Nov-2023 |
David Carlier |
[ci skip] Intl extension UPGRADING note
|
#
a470c4ae |
| 28-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-12532: PharData created from zip has incorrect timestamp The datetime stored in the DOS time fields, which is what zip standard uses, is local time without a timezone. There's an
Fix GH-12532: PharData created from zip has incorrect timestamp The datetime stored in the DOS time fields, which is what zip standard uses, is local time without a timezone. There's an extension to the zip file format since '97 that allows storing a unix timestamp (in UTC) in the header for both the central directory and the local entries. This patch adds support for this. Closes GH-12548.
show more ...
|
#
74ba9167 |
| 29-Oct-2023 |
Jorg Adam Sowa |
Typed constants in sqlite extension (#12379)
|
#
9ad78441 |
| 29-Oct-2023 |
Jorg Adam Sowa |
Typed constants in Intl extenstion (#12360)
|
#
dff8679a |
| 29-Oct-2023 |
Jorg Adam Sowa |
Typed constants in PDO extension (#12362)
|
#
d04854b3 |
| 23-Oct-2023 |
Alex Dowad |
Add fast mb_strcut implementation for UTF-16 Similar to the fast, specialized mb_strcut implementation for UTF-8 in 1f0cf133db, this new implementation of mb_strcut for UTF-16 strings
Add fast mb_strcut implementation for UTF-16 Similar to the fast, specialized mb_strcut implementation for UTF-8 in 1f0cf133db, this new implementation of mb_strcut for UTF-16 strings just examines a few bytes before each cut point. Even for short strings, the new implementation is around 2x faster. For strings around 10,000 bytes in length, it comes out about 100-500x faster in my microbenchmarks. The new implementation behaves identically to the old one on valid UTF-16 strings; a fuzzer was used to help verify this.
show more ...
|
#
e8d8a5fe |
| 28-Oct-2023 |
Jorg Adam Sowa |
Typed constants in reflection extension (#12378)
|
#
e58af7c1 |
| 12-Oct-2023 |
Viktor Vassilyev |
ext/soap: Add support for clark notation for namespaces in class map Closes GH-12411.
|
#
98b08c52 |
| 22-Oct-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement request #68325: parse huge option for xml_parser_create (#12256)
|