#
d7f17ea4 |
| 31-May-2020 |
Nikita Popov |
Fix some line overruns in UPGRADING [ci skip] |
#
805e3e3a |
| 31-May-2020 |
Nikita Popov |
Move upgrading note for mixed This should be in the "new features" section. [ci skip] |
#
2302b14a |
| 26-Mar-2020 |
George Peter Banyard |
Use ZPP callable check for spl_autoload_register. This makes it always throw a TypeError, moreover this makes the error message consistent. Added a warning mentioning that the s
Use ZPP callable check for spl_autoload_register. This makes it always throw a TypeError, moreover this makes the error message consistent. Added a warning mentioning that the second parameter is now ignored when passed false. Closes GH-5301
show more ...
|
#
444aa263 |
| 29-May-2020 |
Máté Kocsis |
Add upgrading notes about the deprecated functionality in ext/enchant [skip ci] |
#
cd3e04df |
| 15-May-2020 |
Máté Kocsis |
Convert enchant resources to opaque objects Additionally, deprecate ENCHANT_MYSPELL and ENCHANT_ISPELL constants. Closes GH-5577 Co-authored-by: Remi Collet <remi@php.net> |
#
cc27781f |
| 29-Apr-2020 |
Tyson Andre |
[RFC] Always enable JSON support in php 8.0 Currently, it's possible to disable the json extension with `./configure --disable-json` (for historical reasons that no longer apply). Ho
[RFC] Always enable JSON support in php 8.0 Currently, it's possible to disable the json extension with `./configure --disable-json` (for historical reasons that no longer apply). However, JSON is widely used in many use cases - web sites, logging output, and as a data format that can be used to share data with many applications and programming languages, so I'd personally find it useful if it was always enabled. Examples of where this would be useful: - For internal classes to be able to implement `JsonSerializable` which currently requires a hard dependency on the JSON extension. - For PHP users to publish single-file scripts that use json_encode and json_decode and don't require polyfills or less readable var_export output. (polyfills are less efficient and may have issues with recursive data structures) - So that php-src's own modules, tools and test cases can start using JSON if it's a good choice for encoding a value. (same for PECLs) https://wiki.php.net/rfc/jsond mentions that in PHP 5, > The current Json Parser in the json extension does not have a free license > which is a problem for many Linux distros. > This has been referenced at Bug #63520. > That results in not packaging json extension in the many Linux distributions. Starting in php 7.0 with the switch to jsond, It looks like licensing is no longer an issue. Changes: - Remove all flags related to JSON such as `configure --disable-json` - Require that JSON be compiled statically instead of as a shared library Examples of uses of JSON in various distros (backwards incompatible changes such as changing packaging are typically reserved for major versions, and 8.0 is a major version) - JSON is required by `php-cli` or `php` in ubuntu: https://packages.ubuntu.com/focal/php/ - The php-json package has to be installed separately from the PHP binary in Fedora repos. Closes GH-5495
show more ...
|
#
0221b8b2 |
| 21-Apr-2020 |
Nikita Popov |
Add support for * width and precision in printf() If * is used for width/precision in printf, then the width/precision is provided by a printf argument instead of being part of the forma
Add support for * width and precision in printf() If * is used for width/precision in printf, then the width/precision is provided by a printf argument instead of being part of the format string. Semantics generally match those of printf in C. This can be used to easily reproduce PHP's float printing behavior: // Locale-sensitive using precision ini setting. // Used prior to PHP 8.0. sprintf("%.*G", (int) ini_get('precision'), $float); // Locale-insensitive using precision ini setting. // Used since to PHP 8.0. sprintf("%.*H", (int) ini_get('precision'), $float); // Locale-insensitive using serialize_precision ini setting. // Used in serialize(), json_encode() etc. sprintf("%.*H", (int) ini_get('serialize_precision'), $float); Closes GH-5432.
show more ...
|
#
b6000b7e |
| 22-Apr-2020 |
Nikita Popov |
Add support for %h and %H in printf() These are locale-independent variants of %g and %G. Closes GH-5436. |
#
a01b6e57 |
| 13-May-2020 |
Nikita Popov |
Return empty array instead of null from enchant APIs Closes GH-5566. |
#
23ee4d4b |
| 03-Apr-2020 |
Max Semenik |
Support catching exceptions without capturing them to variables RFC: https://wiki.php.net/rfc/non-capturing_catches Closes GH-5345. |
#
cbf86efc |
| 25-May-2020 |
Máté Kocsis |
Fix ZPP of v*printf() |
#
ce668c0e |
| 25-May-2020 |
Christoph M. Becker |
PGSQL and POD_SQL: don't include pg_config.h Even if that header file is available, we better consider it private, and don't include it. The information about whether SSL support is
PGSQL and POD_SQL: don't include pg_config.h Even if that header file is available, we better consider it private, and don't include it. The information about whether SSL support is enabled is now missing (`USE_(OPEN)SSL`), and it seems there is no alternative way to get it (`PQinitSSL()` is always defined), so we remove it from the PHP info. Furthermore, the `PG_VERSION` and `PG_VERSION_STR` macros are no longer available, but as of libpq 9.1 there is `PQlibVersion()` which allows us to construct `PG_VERSION` in a most likely backwards compatible manner. The additional information available through `PG_VERSION_STR` is lost, though, so we define `PGSQL_LIBPQ_VERSION_STR` basically as alias of `PGSQL_LIBPQ_VERSION`, and deprecate it right away. Since we are now requiring at least libpq 9.1, we can remove some further compatibility code and additional checks. Regarding the raised requirements: official support for PostGreSQL 9.0 ended on 2015-10-08, and even CentOS 7 already has PostGreSQL 9.2, so this is not supposed to be too much of an issue.
show more ...
|
#
bc3ee2ee |
| 22-May-2020 |
George Peter Banyard |
[skip-ci] Update UPGRADING Add upgrading note for mixed type and removal of curly braces offset syntax |
#
4bc1d833 |
| 22-May-2020 |
Christoph M. Becker |
Raise ext/pgsql requirements to PostGreSQL 7.4 We can safely assume that users have at the very least libpq 7.4, for which official support ended on 2010-10-01; even CentOS 6 has 8.4 now
Raise ext/pgsql requirements to PostGreSQL 7.4 We can safely assume that users have at the very least libpq 7.4, for which official support ended on 2010-10-01; even CentOS 6 has 8.4 now. It is also noteworthy that PDO_PGSQL already requires libpq 7.4 or later.
show more ...
|
#
0a74da38 |
| 19-May-2020 |
Nikita Popov |
Add support for replaying warnings in opcache If opcache.record_warnings is enabled, opcache will record compilation warnings and replay them when the file is included again. The pri
Add support for replaying warnings in opcache If opcache.record_warnings is enabled, opcache will record compilation warnings and replay them when the file is included again. The primary use case I have in mind for this is automated testing of the opcache file cache. This resolves bug #76535.
show more ...
|
#
9198faa6 |
| 08-May-2020 |
Máté Kocsis |
Convert resource to object in Sysvmsg Closes GH-5546 |
#
30077100 |
| 13-May-2020 |
Remi Collet |
Revert "doc for enchant Object move" This reverts commit 2c63324a4eabf3f8bdf9585c8dae4527dca2e41f. |
#
2c63324a |
| 13-May-2020 |
Remi Collet |
doc for enchant Object move |
#
256b7da3 |
| 25-Apr-2020 |
Máté Kocsis |
Convert resource to object in XML-RPC extension Closes GH-5457 |
#
28af364d |
| 25-Feb-2020 |
Nikita Popov |
Deprecate old ReflectionParameter type declaration APIs This deprecates: ReflectionParameter::isArray() ReflectionParameter::isCallable() ReflectionParameter::ge
Deprecate old ReflectionParameter type declaration APIs This deprecates: ReflectionParameter::isArray() ReflectionParameter::isCallable() ReflectionParameter::getClass() These APIs have been superseded by ReflectionParameter::getType() since PHP 7.0. Types introduced since that time are not available through the old APIs, and their behavior is getting increasingly confusing. This is how they interact with PHP 8 union types: * isArray() will return true if the type is array or ?array, but not any other union type * Same for isCallable(). * getClass() will return a class for T|int etc, as long as the union only contains a single type. T1|T2 will return null. This behavior is not particularly reasonable or useful, and will get more confusing as new type system extensions are added. Closes GH-5209.
show more ...
|
#
a0abc26e |
| 21-Apr-2020 |
Nikita Popov |
Add get_resource_id() function Behavior is same as for (int) $resource, just under a clearer name. Also type-safe, in that the parameter actually needs to be a resource. Clo
Add get_resource_id() function Behavior is same as for (int) $resource, just under a clearer name. Also type-safe, in that the parameter actually needs to be a resource. Closes GH-5427.
show more ...
|
#
4a816584 |
| 29-Feb-2020 |
Máté Kocsis |
Make float to string casts locale-independent From now on, float to string casting will always behave locale-independently. RFC: https://wiki.php.net/rfc/locale_independent_float_to_stri
Make float to string casts locale-independent From now on, float to string casting will always behave locale-independently. RFC: https://wiki.php.net/rfc/locale_independent_float_to_string Closes GH-5224 Co-authored-by: George Peter Banyard <girgias@php.net>
show more ...
|
#
b67f699d |
| 07-May-2020 |
Máté Kocsis |
Rename the recently introduced Sysvsem class to SysvSemaphore |
#
eab54d23 |
| 01-May-2020 |
Máté Kocsis |
Convert resource to object in ext/sysvsem Closes GH-5508 |
#
5bc1e224 |
| 01-Apr-2020 |
Nikita Popov |
Make numeric operations on resources, arrays and objects type errors RFC: https://wiki.php.net/rfc/arithmetic_operator_type_checks Closes GH-5331. |