10000 PHP 8.4 | NewFunctions: detect more new functions by jrfnl · Pull Request #1783 · PHPCompatibility/PHPCompatibility · GitHub
[go: up one dir, main page]

Skip to content

PHP 8.4 | NewFunctions: detect more new functions #1783

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Oct 5, 2024

Conversation

jrfnl
Copy link
Member
@jrfnl jrfnl commented Oct 5, 2024

This PR accounts for various new functions which are introduced in PHP 8.4 and do not have an RFC associated with them.


PHP 8.4 | NewFunctions: detect use of pg_result_memory_size()

  • PgSQL:
    . Added pg_result_memory_size to get the visibility the memory used by a query result.

This commit accounts for the new function.

Refs:

PHP 8.4 | NewFunctions: detect use of new PCNTL functions

  • PCNTL:
    . Added pcntl_setns allowing a process to be reassociated with a namespace in order
    to share resources with other processes within this context.
    . Added pcntl_getcpuaffinity to get the cpu(s) bound to a process and
    pcntl_setcpuaffinity to bind 1 or more cpus to a process.
    . Added pcntl_getcpu to get the cpu id from where the current process runs.
    . Added pcntl_getqos_class to get the QoS level (aka performance and related
    energy consumption) of the current process and pcntl_setqos_class to set it.
    . Added pcntl_waitid to obtain status information pertaining to termination, stop,
    and/or continue events in one of the caller's child processes.

This commit accounts for the new functions.

Refs:

pcntl_setns

pcntl_*cpuaffinity

pcntl_getcpu

pcntl_getqos_class/pcntl_setqos

pcntl_waitid

PHP 8.4 | NewFunctions: detect use of new PGSQL functions

  • PGSQL:
    . Added pg_change_password to alter a given user's password. It handles
    transparently the password encryption from the database settings.
    . Added pg_put_copy_data to send COPY commands and pg_put_copy_end to send
    end-of-data to the server.
    . Added pg_socket_poll to check if there is any read and/or write events
    with an optional timeout.
    . Added pg_jit to get informations on the server JIT support.
    . Added pg_set_chunked_rows_size to allow to fetch results in chunk of
    max N rows.

This commit accounts for the new functions.

Refs:

pg_change_password

pg_put_copy_*

pg_socket_poll

pg_jit

pg_set_chunked_rows_size

PHP 8.4 | NewFunctions: detect use of new Sodium functions

  • Sodium:
    . Added the sodium_crypto_aead_aegis128l_() and sodium_crypto_aead_aegis256l_()
    functions to support the AEGIS family of authenticated encryption algorithms,
    that was introduced in libsodium 1.0.19.

This commit accounts for the new functions.

Refs:

PHP 8.4 | NewFunctions: detect use of new OpenSSL functions

  • OpenSSL:
    . Implement PASSWORD_ARGON2 password hashing.
    Requires OpenSSL 3.2 and NTS build.

This commit accounts for the new functions introduced.

Refs:

Related to #1731

jrfnl added 5 commits October 5, 2024 03:06
> - PgSQL:
>  . Added pg_result_memory_size to get the visibility the memory used by a query result.

This commit accounts for the new function.

Refs:
* https://github.com/php/php-src/blob/b56f81cddcb2c0642bbc6c4a8de5731dd3956995/UPGRADING#L495
* php/php-src 14214
* php/php-src@77fa4c0

Related to 1731
> - PCNTL:
> . Added pcntl_setns allowing a process to be reassociated with a namespace in order
>   to share resources with other processes within this context.
> . Added pcntl_getcpuaffinity to get the cpu(s) bound to a process and
>   pcntl_setcpuaffinity to bind 1 or more cpus to a process.
> . Added pcntl_getcpu to get the cpu id from where the current process runs.
> . Added pcntl_getqos_class to get the QoS level (aka performance and related
>   energy consumption) of the current process and pcntl_setqos_class to set it.
> . Added pcntl_waitid to obtain status information pertaining to termination, stop,
>   and/or continue events in one of the caller's child processes.

This commit accounts for the new functions.

Refs:
* https://github.com/php/php-src/blob/612a6ad0af7150d27baa383bacbe5aad73441ba2/UPGRADING#L837-L845

pcntl_setns
* php/php-src 13878
* php/php-src@ae4978a

pcntl_*cpuaffinity
* php/php-src 13893
* php/php-src@1cf8291

pcntl_getcpu
* php/php-src 13908
* php/php-src@d8f2900

pcntl_getqos_class/pcntl_setqos
* php/php-src 13945
* php/php-src@d407266

pcntl_waitid
* php/php-src 14617
* php/php-src@c2fd071

Related to 1731
> - PGSQL:
> . Added pg_change_password to alter a given user's password. It handles
>   transparently the password encryption from the database settings.
> . Added pg_put_copy_data to send COPY commands and pg_put_copy_end to send
>   end-of-data to the server.
> . Added pg_socket_poll to check if there is any read and/or write events
>   with an optional timeout.
> . Added pg_jit to get informations on the server JIT support.
> . Added pg_set_chunked_rows_size to allow to fetch results in chunk of
>   max N rows.

This commit accounts for the new functions.

Refs:
* https://github.com/php/php-src/blob/b56f81cddcb2c0642bbc6c4a8de5731dd3956995/UPGRADING#L751-L760

pg_change_password
* php/php-src 14262
* php/php-src@9aa3a0d

pg_put_copy_*
* php/php-src 14325
* php/php-src@162a311

pg_socket_poll
* php/php-src 14366
* php/php-src@e69bccd

pg_jit
* php/php-src 14566
* php/php-src@2bb8fbd

pg_set_chunked_rows_size
* php/php-src 14571
* php/php-src@564914a

Related to 1731
> - Sodium:
> . Added the sodium_crypto_aead_aegis128l_*() and sodium_crypto_aead_aegis256l_*()
>   functions to support the AEGIS family of authenticated encryption algorithms,
>   that was introduced in libsodium 1.0.19.

This commit accounts for the new functions.

Refs:
* https://github.com/php/php-src/blob/b56f81cddcb2c0642bbc6c4a8de5731dd3956995/UPGRADING#L763-L765
* php/php-src 12867
* php/php-src@1816403

Related to 1731
> - OpenSSL:
>  . Implement PASSWORD_ARGON2 password hashing.
>    Requires OpenSSL 3.2 and NTS build.

This commit accounts for the new functions introduced.

Refs:
* https://github.com/php/php-src/blob/e358634cdce6a7505b7d422c23ec205a483ad2fc/UPGRADING#L335-L336
* php/php-src 13635
* php/php-src@32c5ce3

Related to 1731
@jrfnl jrfnl added this to the 10.0.0 milestone Oct 5, 2024
@jrfnl jrfnl requested a review from wimg October 5, 2024 01:11
@wimg wimg merged commit 3be1e3c into develop Oct 5, 2024
46 checks passed
@wimg wimg deleted the php-8.4/newfunctions-various-non-rfc branch October 5, 2024 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
0