summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--PHPINFO12
-rw-r--r--REFLECTION173
-rw-r--r--php-pecl-swoole6.spec80
3 files changed, 228 insertions, 37 deletions
diff --git a/PHPINFO b/PHPINFO
index 692af82..7ffecd4 100644
--- a/PHPINFO
+++ b/PHPINFO
@@ -3,8 +3,8 @@ swoole
Swoole => enabled
Author => Swoole Team <team@swoole.com>
-Version => 6.1.6
-Built => Dec 29 2025 00:00:00
+Version => 6.2.0RC1
+Built => Feb 17 2026 00:00:00
host byte order => little endian
coroutine => enabled with boost asm context
trace_log => enabled
@@ -29,10 +29,10 @@ mutex_timedlock => enabled
pthread_barrier => enabled
futex => enabled
mysqlnd => enabled
+postgresql(libpq) version => 18.0
coroutine_pgsql => enabled
coroutine_odbc => enabled
coroutine_sqlite => enabled
-io_uring => enabled
execinfo => enabled
Directive => Local Value => Master Value
@@ -41,4 +41,8 @@ swoole.enable_fiber_mock => Off => Off
swoole.enable_preemptive_scheduler => Off => Off
swoole.display_errors => On => On
swoole.use_shortname => On => On
-swoole.unixsock_buffer_size => 8388608 => 8388608
+swoole.socket_buffer_size => 8388608 => 8388608
+swoole.blocking_detection => Off => Off
+swoole.blocking_threshold => 100000 => 100000
+swoole.profile => Off => Off
+swoole.leak_detection => Off => Off
diff --git a/REFLECTION b/REFLECTION
index b167e71..9801493 100644
--- a/REFLECTION
+++ b/REFLECTION
@@ -1,4 +1,4 @@
-Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
+Extension [ <persistent> extension #120 swoole version 6.2.0RC1 ] {
- Dependencies {
Dependency [ json (Required) ]
@@ -24,18 +24,30 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
Entry [ swoole.use_shortname <SYSTEM> ]
Current = 'On'
}
- Entry [ swoole.unixsock_buffer_size <ALL> ]
+ Entry [ swoole.socket_buffer_size <ALL> ]
Current = '8388608'
}
+ Entry [ swoole.blocking_detection <SYSTEM> ]
+ Current = 'Off'
+ }
+ Entry [ swoole.blocking_threshold <SYSTEM> ]
+ Current = '100000'
+ }
+ Entry [ swoole.profile <SYSTEM> ]
+ Current = 'Off'
+ }
+ Entry [ swoole.leak_detection <SYSTEM> ]
+ Current = 'Off'
+ }
}
- - Constants [416] {
- Constant [ <persistent> string SWOOLE_VERSION ] { 6.1.6 }
- Constant [ <persistent> int SWOOLE_VERSION_ID ] { 60106 }
+ - Constants [417] {
+ Constant [ <persistent> string SWOOLE_VERSION ] { 6.2.0RC1 }
+ Constant [ <persistent> int SWOOLE_VERSION_ID ] { 60200 }
Constant [ <persistent> int SWOOLE_MAJOR_VERSION ] { 6 }
- Constant [ <persistent> int SWOOLE_MINOR_VERSION ] { 1 }
- Constant [ <persistent> int SWOOLE_RELEASE_VERSION ] { 6 }
- Constant [ <persistent> string SWOOLE_EXTRA_VERSION ] { }
+ Constant [ <persistent> int SWOOLE_MINOR_VERSION ] { 2 }
+ Constant [ <persistent> int SWOOLE_RELEASE_VERSION ] { 0 }
+ Constant [ <persistent> string SWOOLE_EXTRA_VERSION ] { RC1 }
Constant [ <persistent> bool SWOOLE_DEBUG ] { }
Constant [ <persistent> bool SWOOLE_HAVE_COMPRESSION ] { 1 }
Constant [ <persistent> bool SWOOLE_HAVE_ZLIB ] { 1 }
@@ -258,7 +270,9 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
Constant [ <persistent> int SWOOLE_TRACE_CO_ODBC ] { 8589934592 }
Constant [ <persistent> int SWOOLE_TRACE_CO_ORACLE ] { 17179869184 }
Constant [ <persistent> int SWOOLE_TRACE_CO_SQLITE ] { 34359738368 }
- Constant [ <persistent> int SWOOLE_TRACE_THREAD ] { 68719476736 }
+ Constant [ <persistent> int SWOOLE_TRACE_CO_FIREBIRD ] { 68719476736 }
+ Constant [ <persistent> int SWOOLE_TRACE_CO_SSH2 ] { 137438953472 }
+ Constant [ <persistent> int SWOOLE_TRACE_THREAD ] { 1099511627776 }
Constant [ <persistent> int SWOOLE_TRACE_ALL ] { 9223372036854775807 }
Constant [ <persistent> int SWOOLE_LOG_DEBUG ] { 0 }
Constant [ <persistent> int SWOOLE_LOG_TRACE ] { 1 }
@@ -276,8 +290,6 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
Constant [ <persistent> int SWOOLE_IPC_UNIXSOCK ] { 1 }
Constant [ <persistent> int SWOOLE_IPC_SOCKET ] { 3 }
Constant [ <persistent> int SWOOLE_IOV_MAX ] { 1024 }
- Constant [ <persistent> int SWOOLE_IOURING_DEFAULT ] { 0 }
- Constant [ <persistent> int SWOOLE_IOURING_SQPOLL ] { 2 }
Constant [ <persistent> int SWOOLE_MUTEX ] { 3 }
Constant [ <persistent> int SWOOLE_RWLOCK ] { 1 }
Constant [ <persistent> int SWOOLE_SPINLOCK ] { 5 }
@@ -314,12 +326,13 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
Constant [ <persistent> int SWOOLE_HOOK_PROC ] { 1024 }
Constant [ <persistent> int SWOOLE_HOOK_CURL ] { 2048 }
Constant [ <persistent> int SWOOLE_HOOK_NATIVE_CURL ] { 4096 }
- Constant [ <persistent> int SWOOLE_HOOK_BLOCKING_FUNCTION ] { 8192 }
Constant [ <persistent> int SWOOLE_HOOK_SOCKETS ] { 16384 }
Constant [ <persistent> int SWOOLE_HOOK_PDO_PGSQL ] { 65536 }
Constant [ <persistent> int SWOOLE_HOOK_PDO_ODBC ] { 131072 }
Constant [ <persistent> int SWOOLE_HOOK_PDO_SQLITE ] { 524288 }
- Constant [ <persistent> int SWOOLE_HOOK_ALL ] { 2147481599 }
+ Constant [ <persistent> int SWOOLE_HOOK_NET_FUNCTION ] { 2097152 }
+ Constant [ <persistent> int SWOOLE_HOOK_MONGODB ] { 4194304 }
+ Constant [ <persistent> int SWOOLE_HOOK_ALL ] { 2143287295 }
Constant [ <persistent> int SOCKET_ECANCELED ] { 125 }
Constant [ <persistent> int TCP_INFO ] { 11 }
Constant [ <persistent> int SWOOLE_SYNC ] { 2048 }
@@ -544,7 +557,8 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
}
Function [ <internal:swoole> function swoole_get_local_ip ] {
- - Parameters [0] {
+ - Parameters [1] {
+ Parameter #0 [ <optional> int $family = 2 ]
}
- Return [ array ]
}
@@ -933,6 +947,27 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
}
- Return [ array ]
}
+ Function [ <internal:swoole> function swoole_tracer_leak_detect ] {
+
+ - Parameters [1] {
+ Parameter #0 [ <optional> int $threshold = 64 ]
+ }
+ - Return [ void ]
+ }
+ Function [ <internal:swoole> function swoole_tracer_prof_begin ] {
+
+ - Parameters [1] {
+ Parameter #0 [ <optional> ?array $options = null ]
+ }
+ - Return [ bool ]
+ }
+ Function [ <internal:swoole> function swoole_tracer_prof_end ] {
+
+ - Parameters [1] {
+ Parameter #0 [ <required> string $output_file ]
+ }
+ - Return [ bool ]
+ }
Function [ <internal:swoole> function go ] {
- Parameters [1] {
@@ -1031,6 +1066,12 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
}
- Return [ void ]
}
+ Function [ <internal:swoole> function swoole_event_rshutdown ] {
+
+ - Parameters [0] {
+ }
+ - Return [ void ]
+ }
Function [ <internal:swoole> function swoole_timer_after ] {
- Parameters [2] {
@@ -1269,7 +1310,7 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
}
}
- - Classes [53] {
+ - Classes [54] {
Class [ <internal:swoole> class Swoole\Exception extends Exception implements Throwable, Stringable ] {
- Constants [0] {
@@ -2623,7 +2664,7 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
- Static properties [0] {
}
- - Static methods [37] {
+ - Static methods [38] {
Method [ <internal:swoole> static public method create ] {
- Parameters [2] {
@@ -2696,6 +2737,14 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
- Return [ bool ]
}
+ Method [ <internal:swoole> static public method setTimeLimit ] {
+
+ - Parameters [1] {
+ Parameter #0 [ <required> float $timeout ]
+ }
+ - Return [ bool ]
+ }
+
Method [ <internal:swoole> static public method suspend ] {
- Parameters [0] {
@@ -3574,6 +3623,98 @@ Extension [ <persistent> extension #120 swoole version 6.1.6 ] {
}
}
+ Class [ <internal:swoole> final class Swoole\Coroutine\TimeoutException extends Exception implements Throwable, Stringable ] {
+
+ - Constants [0] {
+ }
+
+ - Static properties [0] {
+ }
+
+ - Static methods [0] {
+ }
+
+ - Properties [4] {
+ Property [ protected $message = '' ]
+ Property [ protected $code = 0 ]
+ Property [ protected string $file = '' ]
+ Property [ protected int $line = 0 ]
+ }
+
+ - Methods [10] {
+ Method [ <internal:Core, inherits Exception, ctor> public method __construct ] {
+
+ - Parameters [3] {
+ Parameter #0 [ <optional> string $message = "" ]
+ Parameter #1 [ <optional> int $code = 0 ]
+ Parameter #2 [ <optional> ?Throwable $previous = null ]
+ }
+ }
+
+ Method [ <internal:Core, inherits Exception> public method __wakeup ] {
+
+ - Parameters [0] {
+ }
+ - Tentative return [ void ]
+ }
+
+ Method [ <internal:Core, inherits Exception, prototype Throwable> final public method getMessage ] {
+
+ - Parameters [0] {
+ }
+ - Return [ string ]
+ }
+
+ Method [ <internal:Core, inherits Exception, prototype Throwable> final public method getCode ] {
+
+ - Parameters [0] {
+ }
+ }
+
+ Method [ <internal:Core, inherits Exception, prototype Throwable> final public method getFile ] {
+
+ - Parameters [0] {
+ }
+ - Return [ string ]
+ }
+
+ Method [ <internal:Core, inherits Exception, prototype Throwable> final public method getLine ] {
+
+ - Parameters [0] {
+ }
+ - Return [ int ]
+ }
+
+ Method [ <internal:Core, inherits Exception, prototype Throwable> final public method getTrace ] {
+
+ - Parameters [0] {
+ }
+ - Return [ array ]
+ }
+
+ Method [ <internal:Core, inherits Exception, prototype Throwable> final public method getPrevious ] {
+
+ - Parameters [0] {
+ }
+ - Return [ ?Throwable ]
+ }
+
+ Method [ <internal:Core, inherits Exception, prototype Throwable> final public method getTraceAsString ] {
+
+ - Parameters [0] {
+ }
+ - Return [ string ]
+ }
+
+ Method [ <internal:Core, inherits Exception, prototype Stringable> public method __toString ] {
+
+ - Parameters [0] {
+ }
+ - Return [ string ]
+ }
+ }
+ }
+
Class [ <internal:swoole> class Swoole\Coroutine\System ] {
- Constants [0] {
diff --git a/php-pecl-swoole6.spec b/php-pecl-swoole6.spec
index 25fd1ce..1048fac 100644
--- a/php-pecl-swoole6.spec
+++ b/php-pecl-swoole6.spec
@@ -37,7 +37,8 @@
%if 0%{?fedora} || 0%{?rhel} >= 9
-%bcond_without uring
+# See https://github.com/swoole/swoole-src/issues/6002
+%bcond_with uring
%else
%bcond_with uring
%endif
@@ -47,9 +48,16 @@
%bcond_without zstd
%bcond_without curl
%bcond_without nghttpd2
-
-%global upstream_version 6.1.6
-#global upstream_prever RC2
+# Conflicts with ssh2/ftp extensions
+# See https://github.com/swoole/swoole-src/issues/6003
+%bcond_with ssh2
+%bcond_with ftp
+# Disabled by default to avoid dependencies (pdo_firebird and libfbclient)
+# See https://github.com/swoole/swoole-src/issues/6004
+%bcond_with firebird
+
+%global upstream_version 6.2.0
+%global upstream_prever RC1
%global sources %{pecl_name}-%{upstream_version}%{?upstream_prever}
%global _configure ../%{sources}/configure
@@ -67,14 +75,14 @@ Source0: https://pecl.php.net/get/%{pecl_name}-%{upstream_version}%{?upst
BuildRequires: make
BuildRequires: %{?dtsprefix}gcc
BuildRequires: %{?dtsprefix}gcc-c++
-BuildRequires: (%{?scl_prefix}php-devel >= 8.1 with %{?scl_prefix}php-devel < 8.5)
+BuildRequires: (%{?scl_prefix}php-devel >= 8.2 with %{?scl_prefix}php-devel < 8.6)
BuildRequires: %{?scl_prefix}php-pear
BuildRequires: %{?scl_prefix}php-curl
BuildRequires: %{?scl_prefix}php-json
BuildRequires: %{?scl_prefix}php-sockets
BuildRequires: %{?scl_prefix}php-mysqlnd
BuildRequires: %{?scl_prefix}php-pdo
-BuildRequires: openssl-devel >= 1.0.2
+BuildRequires: openssl-devel >= 1.1.0
BuildRequires: zlib-devel
%if %{with curl}
BuildRequires: pkgconfig(libcurl)
@@ -96,7 +104,17 @@ BuildRequires: pkgconfig(libpq)
BuildRequires: pkgconfig(libnghttp2)
%endif
%if %{with uring}
-BuildRequires: pkgconfig(liburing) >= 2.5
+BuildRequires: pkgconfig(liburing) >= 2.8
+%endif
+%if %{with ssh2}
+BuildRequires: pkgconfig(libssh2) >= 1.2
+Conflicts: %{?scl_prefix}php-ssh2
+%endif
+%if %{with ftp}
+Conflicts: %{?scl_prefix}php-ftp
+%endif
+%if %{with firebird}
+BuildRequires: firebird-devel
%endif
BuildRequires: pkgconfig(odbc)
BuildRequires: pkgconfig(sqlite3)
@@ -119,7 +137,9 @@ Requires: %{?scl_prefix}php-json%{?_isa}
Requires: %{?scl_prefix}php-sockets%{?_isa}
Requires: %{?scl_prefix}php-mysqlnd%{?_isa}
Requires: %{?scl_prefix}php-pdo%{?_isa}
-
+%if %{with firebird}
+Requires: %{?scl_prefix}php-pdo-firebird%{?_isa}
+%endif
# Extension
Provides: %{?scl_prefix}php-%{pecl_name} = %{version}
Provides: %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version}
@@ -193,6 +213,7 @@ sed \
-e '/Makefile/s/role="doc"/role="src"/' \
-e '/samples/s/role="doc"/role="src"/' \
-e '/name="library/s/role="doc"/role="src"/' \
+ -e '/php-cs-fix/s/role="doc"/role="src"/' \
-e '/LICENSE/s/role="doc"/role="src"/' \
-e '/COPYING/s/role="doc"/role="src"/' \
-i package.xml
@@ -233,12 +254,20 @@ extension=%{pecl_name}.so
;swoole.enable_preemptive_scheduler = Off
;swoole.display_errors = On
:swoole.use_shortname = On
-;swoole.unixsock_buffer_size = 8388608
+;swoole.socket_buffer_size = 8388608
+;swoole.blocking_detection = Off
+;swoole.blocking_threshold = 100000
+;swoole.profile = Off
+;swoole.leak_detection = Off
EOF
+: Dependencies
+grep -r ZEND_MOD_ .
+
%build
%{?dtsenable}
+export PHP_RPATH=no
peclbuild() {
%configure \
@@ -246,8 +275,10 @@ peclbuild() {
--enable-swoole-stdext \
--enable-sockets \
--enable-trace-log \
- --enable-openssl \
--enable-mysqlnd \
+%if %{with ftp}
+ --enable-swoole-ftp \
+%endif
%if %{with pgsql}
--enable-swoole-pgsql \
%endif
@@ -274,6 +305,12 @@ peclbuild() {
%if %{with uring}
--enable-iouring \
%endif
+%if %{with ssh2}
+ --with-swoole-ssh2=%{_root_prefix} \
+%endif
+%if %{with firebird}
+ --with-swoole-firebird \
+%endif
%if %{with oracle}
--with-swoole-oracle=instantclient,%{_root_prefix}/lib/oracle/%{oracledir}/client64/lib \
%endif
@@ -282,9 +319,6 @@ peclbuild() {
--with-libdir=%{_lib} \
--with-php-config=$*
-# See https://bugzilla.redhat.com/show_bug.cgi?id=2345743
-sed -e 's:-Wl,-rpath,/usr/usr/lib64 -L/usr/usr/lib64::' -i Makefile
-
%make_build
}
@@ -334,10 +368,11 @@ rm %{buildroot}%{pecl_docdir}/%{pecl_name}/examples/process/echo.py
%check
OPT="--no-php-ini"
-[ -f %{php_extdir}/curl.so ] && OPT="$OPT -d extension=curl"
-[ -f %{php_extdir}/sockets.so ] && OPT="$OPT -d extension=sockets"
-[ -f %{php_extdir}/mysqlnd.so ] && OPT="$OPT -d extension=mysqlnd"
-[ -f %{php_extdir}/pdo.so ] && OPT="$OPT -d extension=pdo"
+[ -f %{php_extdir}/curl.so ] && OPT="$OPT -d extension=curl"
+[ -f %{php_extdir}/sockets.so ] && OPT="$OPT -d extension=sockets"
+[ -f %{php_extdir}/mysqlnd.so ] && OPT="$OPT -d extension=mysqlnd"
+[ -f %{php_extdir}/pdo.so ] && OPT="$OPT -d extension=pdo"
+[ -f %{php_extdir}/pdo_firebird.so ] && OPT="$OPT -d extension=pdo_firebird"
cd NTS
: Minimal load test for NTS extension
@@ -385,6 +420,17 @@ cd ../ZTS
%changelog
+* Tue Feb 17 2026 Remi Collet <remi@remirepo.net> - 6.2.0~RC1-1
+- update to 6.2.0RC1
+- disable io_uring feature
+- don't enable new ssh2, ftp and firebird features
+- open https://github.com/swoole/swoole-src/issues/6002
+ build failure (uring_socket.cc)
+- open https://github.com/swoole/swoole-src/issues/6003
+ Warning: Function registration failed (related to ssh2 and ftp)
+- open https://github.com/swoole/swoole-src/issues/6004
+ undefined symbol: fb_encode_date
+
* Mon Dec 29 2025 Remi Collet <remi@remirepo.net> - 6.1.6-1
- update to 6.1.6