History log of /PHP-8.4/UPGRADING.INTERNALS (Results 201 – 225 of 502)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: php-8.1.0alpha3, php-7.4.21, php-7.3.29, php-8.0.8, php-8.1.0alpha2
# 0d6358f2 16-Jun-2021 Nikita Popov

Drop support for printf p modifier

To be conservative, cause a fatal error if the p modifier is
encountered, in case this is still used by some extension.


Revision tags: php-7.4.21RC1, php-8.0.8RC1, php-8.1.0alpha1
# e11468a7 07-Jun-2021 Nikita Popov

Remove ZVAL_NEW_ARR() macro

This macro is a footgun because it creates an uninitialized array
(only an allocation). This macro is no longer used in php-src,
and we have better altern

Remove ZVAL_NEW_ARR() macro

This macro is a footgun because it creates an uninitialized array
(only an allocation). This macro is no longer used in php-src,
and we have better alternatives like array_init() or
ZVAL_ARR(arr, zend_new_array(size_hint)).

show more ...


Revision tags: php-8.0.7, php-7.4.20
# 805b391d 30-May-2021 Anatol Belski

NEWS: UPGRADING.INTERNALS: Add PCRE2 10.37 info

[ci skip]

Signed-off-by: Anatol Belski <ab@php.net>


Revision tags: php-8.0.7RC1, php-7.4.20RC1, php-8.0.6, php-7.4.19, php-7.4.18, php-7.3.28, php-8.0.5, php-8.0.5RC1, php-7.4.18RC1
# 612609e1 22-Mar-2021 George Peter Banyard

Refactor PGSQL extension to use zend_string*

* Prevents some unnecessary strlen() computation
* Use interned "NULL"
* Certain PGSQL_API functions now accept zend_string* instead o

Refactor PGSQL extension to use zend_string*

* Prevents some unnecessary strlen() computation
* Use interned "NULL"
* Certain PGSQL_API functions now accept zend_string* instead of char*

Closes GH-6792

show more ...


# fabcfd6d 22-Mar-2021 George Peter Banyard

Formalize return type to zend_result for PGSQL_API functions


Revision tags: php-8.0.4RC1, php-7.4.17RC1, php-8.0.3, php-7.4.16, php-8.0.3RC1, php-7.4.16RC1, php-8.0.2, php-7.4.15, php-7.3.27, php-8.0.2RC1, php-7.4.15RC2, php-7.4.15RC1, php-8.0.1, php-7.4.14, php-7.3.26, php-7.4.14RC1, php-8.0.1RC1, php-7.3.26RC1, php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1
# dcdc5d90 29-Sep-2020 George Peter Banyard

Drop -Wno-implicit-fallthrough compiler flag

And add it back to ext/date, ext/hash, and ext/opcache


# cb8f39f2 31-Mar-2021 twosee

Add zend_get_opcode_id() to get opcode id from name


# caaf2e99 29-Mar-2021 George Peter Banyard

[skip-ci] Update UPGRADING documents for the new argument for fputcsv()


# c732ab40 16-Mar-2021 Dmitry Stogov

Change Zend Stream API to use zend_string* instead of char*.

This allows to eliminate re-calculation of string lenght and hash value.
See the detailed list of changes in UPGRADING.INTERN

Change Zend Stream API to use zend_string* instead of char*.

This allows to eliminate re-calculation of string lenght and hash value.
See the detailed list of changes in UPGRADING.INTERNALS.

show more ...


# 0807c6cb 12-Mar-2021 George Peter Banyard

Remove php_pdo_str_tolower_dup() function


# 91739b8c 03-Mar-2021 Máté Kocsis

Fix bug #80816 Document the removal of alias class entries from ext/spl

Closes GH-6748 [skip-ci]


# 6055b72d 21-Feb-2021 Anatol Belski

UPGRADING: Add note about xxHash secret and fix a typo

[ci skip]

Signed-off-by: Anatol Belski <ab@php.net>


# a78aea89 18-Jan-2021 George Peter Banyard

Refactor PDO's last inserted ID handler to use and return zend_string

Closes GH-6617


# 94ea8e24 18-Jan-2021 George Peter Banyard

Refactor PDO doer handler to use zend_string


# 63cda0fe 23-Dec-2020 George Peter Banyard

Refactor PDO's quoter handler to return a zend_string

Closes GH-6547


# 9052f3b7 06-Jan-2021 George Peter Banyard

Update UPGRADIN.INTERNALS


# caa71003 17-Dec-2020 Nikita Popov

Rewrite PDO result binding

Instead of requiring the type to be determined in advance by the
describer function and then requiring get_col to return a buffer
of appropriate type, allo

Rewrite PDO result binding

Instead of requiring the type to be determined in advance by the
describer function and then requiring get_col to return a buffer
of appropriate type, allow get_col to return an arbitrary zval.
See UPGRADING.INTERNALS for a more detailed description of the
change.

This makes the result fetching simpler, more efficient and more
flexible. The general possibility already existed via the special
PDO_PARAM_ZVAL type, but the usage was very inconvenient and/or
inefficient. Now it's possible to easily implement behavior like
"return int if it fits, otherwise string" and to avoid any kind
of complex management of temporary buffers.

This also fixes bug #40913 (our second highest voted bug of all
time, for some reason). PARAM_LOB result bindings will now
consistently return a stream resource, independently of the used
database driver.

I've tried my best to update all PDO drivers for this change, but
some of the changes may be broken, as I cannot test or even build
some of these drivers (in particular PDO dblib and PDO oci).
Fixes are appreciated -- a working CI setup would be even more
appreciated ;)

show more ...


# ffcc93e3 13-Dec-2020 Anatol Belski

UPGRADING.INTERNALS: Document hash init signature changes [ci skip]

Signed-off-by: Anatol Belski <ab@php.net>


# 14806e08 09-Oct-2020 Gabriel Caruso

Prepare for PHP 8.1

Closes GH-6305.


Revision tags: php-7.4.11, php-7.3.23
# 07a2f304 24-Sep-2020 George Peter Banyard

Extensions should have the final say on their compiler flags

Currently compiler flags passed by extensions using the standard
``PHP_NEW_EXTENSION`` and ``PHP_ADD_SOURCES`` m4 macros are

Extensions should have the final say on their compiler flags

Currently compiler flags passed by extensions using the standard
``PHP_NEW_EXTENSION`` and ``PHP_ADD_SOURCES`` m4 macros are prepended
before the ones defined by ``Zend/Zend.m4``.

This was not really an issue before as ``Zend.m4`` only included
``-Wall`` but since the addition of ``-Wextra`` various issue about
disabling flags have been brought up.

A preliminary attempt was done in commit 5c1cf7669b937dcb4589cb0c8deccd343dfd85f9
but this turns out to be more or less irrelevant.

The root issue is that ``PHP_NEW_EXTENSION`` and ``PHP_ADD_SOURCES`` call the
``PHP_ADD_SOURCES_X`` macro and pass their flags as the 3rd argument which prepends
the flags. There exists a 6th argument for this macro which appends them but from a
cursory look at https://heap.space/search?full=PHP_ADD_SOURCES_X&project=php-src
this is not used. Moreover, the comment describing this macro explicitly informs
that this macro should not be used directly.

As such we drop the 6th argument of ``PHP_ADD_SOURCES_X`` and move the `special-flags`
argument to be appended instead of prepended.

Closes GH-6204

show more ...


Revision tags: php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22, php-8.0.0beta2, php-7.3.22RC1, php-7.4.10RC1
# 3e33e1e8 05-Aug-2020 Christoph M. Becker

Check linker compatibility directly from HMODULE

Checking the linker compatibility with extranous `ImageLoad()` calls is
possible, but unnecessary, since the modules are either already l

Check linker compatibility directly from HMODULE

Checking the linker compatibility with extranous `ImageLoad()` calls is
possible, but unnecessary, since the modules are either already loaded
or loaded shortly afterwards, so that we can get the required
information directly from the module handles. And actually, doing
`ImageLoad()` as well as `LoadLibrary()` leaves a tiny room for a race
condition, because both functions will lookup the module in the search
path, so there is no *guarantee* that both are dealing with the same
module. Dropping the `ImageLoad()` calls also has the advantage to no
longer face the issue reported in bug #79557. A very minor additional
advantage is that we no longer have to link against Imagehlp.dll.

Furthermore, there is no need to check for CRT compatibility multiple
times, so we can simplify the signature of `php_win32_crt_compatible`,
and at the same time clean up main.c a bit.

These changes require to change the signature of the exported
`php_win32_image_compatible` and `php_win32_crt_compatible` functions,
which now expect a `HMODULE` and nothing, respectively, instead of the
module name.

show more ...


Revision tags: php-8.0.0beta1, php-7.4.9, php-7.2.33, php-7.3.21, php-8.0.0alpha3, php-7.4.9RC1, php-7.3.21RC1
# 12306728 16-Jul-2020 Sammy Kaye Powers

Add system ID entropy API

The `zend_system_id` is a (true global) system ID that fingerprints a process state. When extensions add engine hooks during MINIT/startup, entropy is added the sys

Add system ID entropy API

The `zend_system_id` is a (true global) system ID that fingerprints a process state. When extensions add engine hooks during MINIT/startup, entropy is added the system ID for each hook. This allows extensions to identify that changes have been made to the engine since the last PHP process restart.

Closes GH-5871

show more ...


# 34bb5ba2 18-Sep-2020 Nikita Popov

Remove support for EXT_NOP

This is an annoying edge case that regularly gets broken. As we're
not aware of significant users of this API, and there are other
ways to hook this, remov

Remove support for EXT_NOP

This is an annoying edge case that regularly gets broken. As we're
not aware of significant users of this API, and there are other
ways to hook this, remove support for EXT_NOP.

show more ...


# 1359a52d 14-Sep-2020 Benjamin Eberlei

Rename zend_error_notify APIs to zend_observer_error*


# 7b3ac296 03-Sep-2020 George Peter Banyard

Fix mismatch between macro and struct definition


12345678910>>...21