diff options
author | Remi Collet <remi@remirepo.net> | 2025-09-01 07:25:42 +0200 |
---|---|---|
committer | Remi Collet <remi@php.net> | 2025-09-01 07:25:42 +0200 |
commit | bd61b6c9dc1c5985b36ab336de49662483aaac45 (patch) | |
tree | 5d7438791b9121a1383ee2ae8f38a5abdbfcea3a | |
parent | e63ba4a3beb0fdbfce0ddd42aea81949d3c73ca8 (diff) |
enable swoole stdext support
-rw-r--r-- | PHPINFO | 8 | ||||
-rw-r--r-- | REFLECTION | 250 | ||||
-rw-r--r-- | php-pecl-swoole6.spec | 15 |
3 files changed, 249 insertions, 24 deletions
@@ -3,8 +3,9 @@ swoole Swoole => enabled Author => Swoole Team <team@swoole.com> -Version => 6.0.2 -Built => Mar 23 2025 00:00:00 +Version => 6.1.0RC1 +Built => Sep 1 2025 00:00:00 +host byte order => little endian coroutine => enabled with boost asm context trace_log => enabled epoll => enabled @@ -20,7 +21,7 @@ http2 => enabled json => enabled curl-native => enabled curl-version => 8.9.1 -c-ares => 1.34.4 +c-ares => 1.34.5 zlib => 1.3.1.zlib-ng brotli => E16781312/D16781312 zstd => 1.5.7 @@ -32,6 +33,7 @@ coroutine_pgsql => enabled coroutine_odbc => enabled coroutine_sqlite => enabled io_uring => enabled +boost stacktrace => enabled Directive => Local Value => Master Value swoole.enable_library => On => On @@ -1,4 +1,4 @@ -Extension [ <persistent> extension #111 swoole version 6.0.2 ] { +Extension [ <persistent> extension #117 swoole version 6.1.0RC1 ] { - Dependencies { Dependency [ json (Required) ] @@ -29,13 +29,13 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { } } - - Constants [399] { - Constant [ string SWOOLE_VERSION ] { 6.0.2 } - Constant [ int SWOOLE_VERSION_ID ] { 60002 } + - Constants [414] { + Constant [ string SWOOLE_VERSION ] { 6.1.0RC1 } + Constant [ int SWOOLE_VERSION_ID ] { 60100 } Constant [ int SWOOLE_MAJOR_VERSION ] { 6 } - Constant [ int SWOOLE_MINOR_VERSION ] { 0 } - Constant [ int SWOOLE_RELEASE_VERSION ] { 2 } - Constant [ string SWOOLE_EXTRA_VERSION ] { } + Constant [ int SWOOLE_MINOR_VERSION ] { 1 } + Constant [ int SWOOLE_RELEASE_VERSION ] { 0 } + Constant [ string SWOOLE_EXTRA_VERSION ] { RC1 } Constant [ bool SWOOLE_DEBUG ] { } Constant [ bool SWOOLE_HAVE_COMPRESSION ] { 1 } Constant [ bool SWOOLE_HAVE_ZLIB ] { 1 } @@ -48,12 +48,16 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Constant [ int SWOOLE_SOCK_UDP6 ] { 4 } Constant [ int SWOOLE_SOCK_UNIX_DGRAM ] { 6 } Constant [ int SWOOLE_SOCK_UNIX_STREAM ] { 5 } + Constant [ int SWOOLE_SOCK_RAW ] { 7 } + Constant [ int SWOOLE_SOCK_RAW6 ] { 8 } Constant [ int SWOOLE_TCP ] { 1 } Constant [ int SWOOLE_TCP6 ] { 3 } Constant [ int SWOOLE_UDP ] { 2 } Constant [ int SWOOLE_UDP6 ] { 4 } Constant [ int SWOOLE_UNIX_DGRAM ] { 6 } Constant [ int SWOOLE_UNIX_STREAM ] { 5 } + Constant [ int SWOOLE_RAW ] { 7 } + Constant [ int SWOOLE_RAW6 ] { 8 } Constant [ bool SWOOLE_SOCK_SYNC ] { } Constant [ bool SWOOLE_SOCK_ASYNC ] { 1 } Constant [ int SWOOLE_SYNC ] { 2048 } @@ -109,6 +113,7 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Constant [ int SWOOLE_ERROR_FILE_NOT_EXIST ] { 700 } Constant [ int SWOOLE_ERROR_FILE_TOO_LARGE ] { 701 } Constant [ int SWOOLE_ERROR_FILE_EMPTY ] { 702 } + Constant [ int SWOOLE_ERROR_DIR_NOT_EXIST ] { 703 } Constant [ int SWOOLE_ERROR_DNSLOOKUP_DUPLICATE_REQUEST ] { 710 } Constant [ int SWOOLE_ERROR_DNSLOOKUP_RESOLVE_FAILED ] { 711 } Constant [ int SWOOLE_ERROR_DNSLOOKUP_RESOLVE_TIMEOUT ] { 712 } @@ -117,7 +122,12 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Constant [ int SWOOLE_ERROR_BAD_IPV6_ADDRESS ] { 720 } Constant [ int SWOOLE_ERROR_UNREGISTERED_SIGNAL ] { 721 } Constant [ int SWOOLE_ERROR_BAD_HOST_ADDR ] { 722 } - Constant [ int SWOOLE_ERROR_EVENT_SOCKET_REMOVED ] { 800 } + Constant [ int SWOOLE_ERROR_BAD_PORT ] { 723 } + Constant [ int SWOOLE_ERROR_BAD_SOCKET_TYPE ] { 724 } + Constant [ int SWOOLE_ERROR_EVENT_REMOVE_FAILED ] { 800 } + Constant [ int SWOOLE_ERROR_EVENT_ADD_FAILED ] { 801 } + Constant [ int SWOOLE_ERROR_EVENT_UPDATE_FAILED ] { 802 } + Constant [ int SWOOLE_ERROR_EVENT_UNKNOWN_DATA ] { 803 } Constant [ int SWOOLE_ERROR_SESSION_CLOSED_BY_SERVER ] { 1001 } Constant [ int SWOOLE_ERROR_SESSION_CLOSED_BY_CLIENT ] { 1002 } Constant [ int SWOOLE_ERROR_SESSION_CLOSING ] { 1003 } @@ -137,6 +147,7 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Constant [ int SWOOLE_ERROR_SSL_RESET ] { 1017 } Constant [ int SWOOLE_ERROR_SSL_HANDSHAKE_FAILED ] { 1018 } Constant [ int SWOOLE_ERROR_SSL_CREATE_CONTEXT_FAILED ] { 1019 } + Constant [ int SWOOLE_ERROR_SSL_CREATE_SESSION_FAILED ] { 1020 } Constant [ int SWOOLE_ERROR_PACKAGE_LENGTH_TOO_LARGE ] { 1201 } Constant [ int SWOOLE_ERROR_PACKAGE_LENGTH_NOT_FOUND ] { 1202 } Constant [ int SWOOLE_ERROR_DATA_LENGTH_TOO_LARGE ] { 1203 } @@ -149,17 +160,20 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Constant [ int SWOOLE_ERROR_HTTP2_STREAM_NOT_FOUND ] { 3003 } Constant [ int SWOOLE_ERROR_HTTP2_STREAM_IGNORE ] { 3004 } Constant [ int SWOOLE_ERROR_HTTP2_SEND_CONTROL_FRAME_FAILED ] { 3005 } + Constant [ int SWOOLE_ERROR_HTTP2_INTERNAL_ERROR ] { 3006 } Constant [ int SWOOLE_ERROR_AIO_BAD_REQUEST ] { 4001 } Constant [ int SWOOLE_ERROR_AIO_CANCELED ] { 4002 } Constant [ int SWOOLE_ERROR_AIO_TIMEOUT ] { 4003 } Constant [ int SWOOLE_ERROR_CLIENT_NO_CONNECTION ] { 5001 } Constant [ int SWOOLE_ERROR_SOCKET_CLOSED ] { 6001 } Constant [ int SWOOLE_ERROR_SOCKET_POLL_TIMEOUT ] { 6002 } + Constant [ int SWOOLE_ERROR_SOCKET_NOT_EXISTS ] { 6003 } Constant [ int SWOOLE_ERROR_SOCKS5_UNSUPPORT_VERSION ] { 7001 } Constant [ int SWOOLE_ERROR_SOCKS5_UNSUPPORT_METHOD ] { 7002 } Constant [ int SWOOLE_ERROR_SOCKS5_AUTH_FAILED ] { 7003 } Constant [ int SWOOLE_ERROR_SOCKS5_SERVER_ERROR ] { 7004 } Constant [ int SWOOLE_ERROR_SOCKS5_HANDSHAKE_FAILED ] { 7005 } + Constant [ int SWOOLE_ERROR_SOCKS5_CONNECT_FAILED ] { 7006 } Constant [ int SWOOLE_ERROR_HTTP_PROXY_HANDSHAKE_ERROR ] { 7101 } Constant [ int SWOOLE_ERROR_HTTP_INVALID_PROTOCOL ] { 7102 } Constant [ int SWOOLE_ERROR_HTTP_PROXY_HANDSHAKE_FAILED ] { 7103 } @@ -247,6 +261,7 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Constant [ int SWOOLE_TRACE_CO_ODBC ] { 8589934592 } Constant [ int SWOOLE_TRACE_CO_ORACLE ] { 17179869184 } Constant [ int SWOOLE_TRACE_CO_SQLITE ] { 34359738368 } + Constant [ int SWOOLE_TRACE_THREAD ] { 68719476736 } Constant [ int SWOOLE_TRACE_ALL ] { 9223372036854775807 } Constant [ int SWOOLE_LOG_DEBUG ] { 0 } Constant [ int SWOOLE_LOG_TRACE ] { 1 } @@ -722,6 +737,200 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { } - Return [ bool ] } + Function [ <internal:swoole> function swoole_call_array_method ] { + + - Parameters [1] { + Parameter #0 [ <optional> mixed ...$args ] + } + - Return [ mixed ] + } + Function [ <internal:swoole> function swoole_call_string_method ] { + + - Parameters [1] { + Parameter #0 [ <optional> mixed ...$args ] + } + - Return [ mixed ] + } + Function [ <internal:swoole> function swoole_call_stream_method ] { + + - Parameters [1] { + Parameter #0 [ <optional> mixed ...$args ] + } + - Return [ mixed ] + } + Function [ <internal:swoole> function swoole_array_search ] { + + - Parameters [3] { + Parameter #0 [ <required> array $array ] + Parameter #1 [ <required> mixed $value ] + Parameter #2 [ <optional> bool $strict = false ] + } + - Return [ string|int|false ] + } + Function [ <internal:swoole> function swoole_array_contains ] { + + - Parameters [3] { + Parameter #0 [ <required> array $array ] + Parameter #1 [ <required> mixed $needle ] + Parameter #2 [ <optional> bool $strict = false ] + } + - Return [ bool ] + } + Function [ <internal:swoole> function swoole_array_join ] { + + - Parameters [2] { + Parameter #0 [ <required> array $array ] + Parameter #1 [ <required> string $separator ] + } + - Return [ string ] + } + Function [ <internal:swoole> function swoole_array_key_exists ] { + + - Parameters [2] { + Parameter #0 [ <required> array $array ] + Parameter #1 [ <required> resource|string|int|float|bool|null $key ] + } + - Return [ bool ] + } + Function [ <internal:swoole> function swoole_array_map ] { + + - Parameters [3] { + Parameter #0 [ <required> array $array ] + Parameter #1 [ <required> ?callable $callback ] + Parameter #2 [ <optional> array ...$arrays ] + } + - Return [ array ] + } + Function [ <internal:swoole> function swoole_str_split ] { + + - Parameters [3] { + Parameter #0 [ <required> string $string ] + Parameter #1 [ <required> string $delimiter ] + Parameter #2 [ <optional> int $limit = PHP_INT_MAX ] + } + - Return [ array ] + } + Function [ <internal:swoole> function swoole_parse_str ] { + + - Parameters [1] { + Parameter #0 [ <required> string $string ] + } + - Return [ array ] + } + Function [ <internal:swoole> function swoole_hash ] { + + - Parameters [4] { + Parameter #0 [ <required> string $data ] + Parameter #1 [ <required> string $algo ] + Parameter #2 [ <optional> bool $binary = false ] + Parameter #3 [ <optional> array $options = [] ] + } + - Return [ string ] + } + Function [ <internal:swoole> function swoole_typed_array ] { + + - Parameters [2] { + Parameter #0 [ <required> string $typeDef ] + Parameter #1 [ <optional> ?array $initArray = null ] + } + - Return [ array ] + } + Function [ <internal:swoole> function swoole_array_is_typed ] { + + - Parameters [2] { + Parameter #0 [ <required> array $array ] + Parameter #1 [ <optional> string $typeDef = '' ] + } + - Return [ bool ] + } + Function [ <internal:swoole> function swoole_str_is_empty ] { + + - Parameters [1] { + Parameter #0 [ <required> string $string ] + } + - Return [ bool ] + } + Function [ <internal:swoole> function swoole_array_is_empty ] { + + - Parameters [1] { + Parameter #0 [ <required> array $array ] + } + - Return [ bool ] + } + Function [ <internal:swoole> function swoole_str_match ] { + + - Parameters [4] { + Parameter #0 [ <required> string $string ] + Parameter #1 [ <required> string $pattern ] + Parameter #2 [ <optional> int $flags = 0 ] + Parameter #3 [ <optional> int $offset = 0 ] + } + - Return [ array|false ] + } + Function [ <internal:swoole> function swoole_str_match_all ] { + + - Parameters [4] { + Parameter #0 [ <required> string $string ] + Parameter #1 [ <required> string $pattern ] + Parameter #2 [ <optional> int $flags = 0 ] + Parameter #3 [ <optional> int $offset = 0 ] + } + - Return [ array|false ] + } + Function [ <internal:swoole> function swoole_str_json_decode ] { + + - Parameters [3] { + Parameter #0 [ <required> string $string ] + Parameter #1 [ <optional> int $depth = 512 ] + Parameter #2 [ <optional> int $flags = 0 ] + } + - Return [ mixed ] + } + Function [ <internal:swoole> function swoole_str_json_decode_to_object ] { + + - Parameters [3] { + Parameter #0 [ <required> string $string ] + Parameter #1 [ <optional> int $depth = 512 ] + Parameter #2 [ <optional> int $flags = 0 ] + } + - Return [ mixed ] + } + Function [ <internal:swoole> function swoole_str_replace ] { + + - Parameters [3] { + Parameter #0 [ <required> string $subject ] + Parameter #1 [ <required> array|string $search ] + Parameter #2 [ <required> array|string $replace ] + } + - Return [ string ] + } + Function [ <internal:swoole> function swoole_str_ireplace ] { + + - Parameters [3] { + Parameter #0 [ <required> string $subject ] + Parameter #1 [ <required> array|string $search ] + Parameter #2 [ <required> array|string $replace ] + } + - Return [ string ] + } + Function [ <internal:swoole> function swoole_array_replace_str ] { + + - Parameters [3] { + Parameter #0 [ <required> array $subjects ] + Parameter #1 [ <required> array|string $search ] + Parameter #2 [ <required> array|string $replace ] + } + - Return [ array ] + } + Function [ <internal:swoole> function swoole_array_ireplace_str ] { + + - Parameters [3] { + Parameter #0 [ <required> array $subjects ] + Parameter #1 [ <required> array|string $search ] + Parameter #2 [ <required> array|string $replace ] + } + - Return [ array ] + } Function [ <internal:swoole> function go ] { - Parameters [1] { @@ -736,6 +945,14 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { } - Return [ void ] } + Function [ <internal:swoole> function typed_array ] { + + - Parameters [2] { + Parameter #0 [ <required> string $typeDef ] + Parameter #1 [ <optional> ?array $initArray = null ] + } + - Return [ array ] + } Function [ <internal:swoole> function swoole_event_add ] { - Parameters [4] { @@ -1561,12 +1778,15 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Class [ <internal:swoole> class Swoole\Process ] { - - Constants [5] { + - Constants [8] { Constant [ public int IPC_NOWAIT ] { 256 } Constant [ public int PIPE_MASTER ] { 1 } Constant [ public int PIPE_WORKER ] { 2 } Constant [ public int PIPE_READ ] { 3 } Constant [ public int PIPE_WRITE ] { 4 } + Constant [ public int PIPE_TYPE_NONE ] { 0 } + Constant [ public int PIPE_TYPE_STREAM ] { 1 } + Constant [ public int PIPE_TYPE_DGRAM ] { 2 } } - Static properties [0] { @@ -5678,9 +5898,8 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Method [ <internal:swoole> public method stop ] { - - Parameters [2] { + - Parameters [1] { Parameter #0 [ <optional> int $workerId = -1 ] - Parameter #1 [ <optional> bool $waitEvent = false ] } - Return [ bool ] } @@ -6891,9 +7110,8 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Method [ <internal:swoole, inherits Swoole\Server> public method stop ] { - - Parameters [2] { + - Parameters [1] { Parameter #0 [ <optional> int $workerId = -1 ] - Parameter #1 [ <optional> bool $waitEvent = false ] } - Return [ bool ] } @@ -7432,9 +7650,8 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Method [ <internal:swoole, inherits Swoole\Server> public method stop ] { - - Parameters [2] { + - Parameters [1] { Parameter #0 [ <optional> int $workerId = -1 ] - Parameter #1 [ <optional> bool $waitEvent = false ] } - Return [ bool ] } @@ -7980,9 +8197,8 @@ Extension [ <persistent> extension #111 swoole version 6.0.2 ] { Method [ <internal:swoole, inherits Swoole\Server> public method stop ] { - - Parameters [2] { + - Parameters [1] { Parameter #0 [ <optional> int $workerId = -1 ] - Parameter #1 [ <optional> bool $waitEvent = false ] } - Return [ bool ] } diff --git a/php-pecl-swoole6.spec b/php-pecl-swoole6.spec index 05c0376..8b10454 100644 --- a/php-pecl-swoole6.spec +++ b/php-pecl-swoole6.spec @@ -48,8 +48,8 @@ %bcond_without curl %bcond_without nghttpd2 -%global upstream_version 6.0.2 -#global upstream_prever RC1 +%global upstream_version 6.1.0 +%global upstream_prever RC1 %global sources %{pecl_name}-%{upstream_version}%{?upstream_prever} %global _configure ../%{sources}/configure @@ -59,7 +59,7 @@ Version: %{upstream_version}%{?upstream_prever:~%{upstream_prever}} Release: 1%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}} # Extension is Apache-2.0 # BSD-3-Clause: Hiredis -# MIT: nlohmann/json, nghttp2 +# MIT: nlohmann/json, nghttp2, llhttp License: Apache-2.0 AND BSD-3-Clause AND MIT URL: https://pecl.php.net/package/%{pecl_name} Source0: https://pecl.php.net/get/%{pecl_name}-%{upstream_version}%{?upstream_prever}.tgz @@ -202,6 +202,7 @@ rm -r thirdparty/nghttp2 %else cp -p thirdparty/nghttp2/COPYING nghttp2-COPYING %endif +cp thirdparty/llhttp/LICENSE llhttp-LICENSE # Sanity check, really often broken extver=$(sed -n '/#define SWOOLE_VERSION /{s/.* "//;s/".*$//;p}' include/swoole_version.h) @@ -239,6 +240,7 @@ EOF peclbuild() { %configure \ --enable-swoole \ + --enable-swoole-stdext \ --enable-sockets \ --enable-trace-log \ --enable-openssl \ @@ -352,6 +354,7 @@ cd ../ZTS %files %license %{sources}/LICENSE %license %{sources}/*-COPYING +%license %{sources}/*-LICENSE %doc %{pecl_docdir}/%{pecl_name}/*md %{pecl_xmldir}/%{name}.xml @@ -366,7 +369,7 @@ cd ../ZTS %files devel %doc %{pecl_testdir}/%{pecl_name} -%doc %{pecl_docdir}/%{pecl_name}/core-tests +%doc %{pecl_docdir}/%{pecl_name}/Dockerfile %doc %{pecl_docdir}/%{pecl_name}/docs %doc %{pecl_docdir}/%{pecl_name}/examples %doc %{pecl_docdir}/%{pecl_name}/gdbinit @@ -379,6 +382,10 @@ cd ../ZTS %changelog +* Mon Sep 1 2025 Remi Collet <remi@remirepo.net> - 6.1.0~RC1-1 +- update to 6.1.0RC1 +- enable swoole stdext support + * Sun Mar 23 2025 Remi Collet <remi@remirepo.net> - 6.0.2-1 - update to 6.0.2 |