Skip to content

Commit a3a1350

Browse files
release v6.1.5 (#5962)
1 parent f9ff73f commit a3a1350

File tree

3 files changed

+30
-43
lines changed

3 files changed

+30
-43
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.10)
22
project(libswoole)
33

44
enable_language(ASM)
5-
set(SWOOLE_VERSION 6.1.4)
5+
set(SWOOLE_VERSION 6.1.5)
66

77
set(CMAKE_CXX_STANDARD 14)
88
set(CMAKE_CXX_STANDARD_REQUIRED ON)

include/swoole_version.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@
2020

2121
#define SWOOLE_MAJOR_VERSION 6
2222
#define SWOOLE_MINOR_VERSION 1
23-
#define SWOOLE_RELEASE_VERSION 4
23+
#define SWOOLE_RELEASE_VERSION 5
2424
#define SWOOLE_EXTRA_VERSION ""
25-
#define SWOOLE_VERSION "6.1.4"
26-
#define SWOOLE_VERSION_ID 60103
25+
#define SWOOLE_VERSION "6.1.5"
26+
#define SWOOLE_VERSION_ID 60105
2727
#define SWOOLE_API_VERSION_ID 0x202208a
2828

2929
#define SWOOLE_BUG_REPORT \

package.xml

Lines changed: 26 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,10 @@
4949
<email>doubaokun@php.net</email>
5050
<active>yes</active>
5151
</developer>
52-
<date>2025-12-06</date>
53-
<time>14:00:00</time>
52+
<date>2025-12-21</date>
53+
<time>18:00:00</time>
5454
<version>
55-
<release>6.1.4</release>
55+
<release>6.1.5</release>
5656
<api>6.0</api>
5757
</version>
5858
<stability>
@@ -61,7 +61,14 @@
6161
</stability>
6262
<license uri="http://www.apache.org/licenses/LICENSE-2.0.html">Apache2.0</license>
6363
<notes>
64-
- Fix the memory leak issue in the curl module.
64+
- Fixed a crash issue when users manually suspend coroutines in a multithreaded environment
65+
- Fixed the issue where the `System::socket_poll()` function incorrectly closed sockets after failing to add events
66+
- Fixed decompression failure in `WebSocket` when compressing message frames, caused by certain server environments not supporting `MAX_MEM_LEVEL=9`
67+
- Fixed data reception errors in `WebSocket` when receiving consecutive compressed data frames, caused by the buffer not being cleared in time
68+
- Fixed the `data race` issue in the `pdo_oci` coroutine client when processing non-`PDO_PARAM_LOB` data
69+
- In `Http Server`, when developers set the `Content-Encoding` header, `Swoole` will no longer automatically compress the response body. Instead, developers need to implement compression logic themselves and output the corresponding content.
70+
- Removed the `PDO::sqliteCreateAggregate()`, `PDO::sqliteCreateCollation()`, and `PDO::sqliteCreateFunction()` functions in the coroutine environment. Their implementation principle involves calling PHP functions as callbacks in the `sqlite3` engine, which is only feasible in single-threaded synchronous blocking mode. In `Swoole` coroutine mode, the `C` functions of `sqlite3` need to run in asynchronous `AIO` threads. In the `ZTS` version, this can cause null pointer reads, while in the `NTS` version, it may lead to `data race` issues and occasional crashes.
71+
- Removed support for the `open_basedir` setting in the `pdo_sqlite` coroutine client. It is unsafe to read `PG(open_basedir)` in a multithreaded environment. Ensure that the `sqlite3` database file path is a constant or other safe path. Do not use user input parameters as part of the `sqlite` database file path.
6572
</notes>
6673
<contents>
6774
<dir name="/">
@@ -1564,6 +1571,8 @@
15641571
<file role="test" name="tests/swoole_http_client_coro/websocket/ping.phpt" />
15651572
<file role="test" name="tests/swoole_http_client_coro/websocket/priority.phpt" />
15661573
<file role="test" name="tests/swoole_http_client_coro/websocket/priority1.phpt" />
1574+
<file role="test" name="tests/swoole_http_client_coro/websocket/send_more_continue_frame.phpt" />
1575+
<file role="test" name="tests/swoole_http_client_coro/websocket/send_more_continue_frame2.phpt" />
15671576
<file role="test" name="tests/swoole_http_client_coro/websocket/server_push_first.phpt" />
15681577
<file role="test" name="tests/swoole_http_client_coro/websocket/ssl_1.phpt" />
15691578
<file role="test" name="tests/swoole_http_client_coro/websocket/ssl_2.phpt" />
@@ -1601,6 +1610,7 @@
16011610
<file role="test" name="tests/swoole_http_server/chunk_with_end_data.phpt" />
16021611
<file role="test" name="tests/swoole_http_server/chunked_pipeline_request.phpt" />
16031612
<file role="test" name="tests/swoole_http_server/client_ca.phpt" />
1613+
<file role="test" name="tests/swoole_http_server/client_compress.phpt" />
16041614
<file role="test" name="tests/swoole_http_server/co_switching.phpt" />
16051615
<file role="test" name="tests/swoole_http_server/compression.phpt" />
16061616
<file role="test" name="tests/swoole_http_server/compression_min_length.phpt" />
@@ -1846,9 +1856,7 @@
18461856
<file role="test" name="tests/swoole_pdo_sqlite/bug48773.phpt" />
18471857
<file role="test" name="tests/swoole_pdo_sqlite/bug50728.phpt" />
18481858
<file role="test" name="tests/swoole_pdo_sqlite/bug52487.phpt" />
1849-
<file role="test" name="tests/swoole_pdo_sqlite/bug60104.phpt" />
18501859
<file role="test" name="tests/swoole_pdo_sqlite/bug66033.phpt" />
1851-
<file role="test" name="tests/swoole_pdo_sqlite/bug70221.phpt" />
18521860
<file role="test" name="tests/swoole_pdo_sqlite/bug70862.phpt" />
18531861
<file role="test" name="tests/swoole_pdo_sqlite/bug70862_1.phpt" />
18541862
<file role="test" name="tests/swoole_pdo_sqlite/bug78192_1.phpt" />
@@ -1867,19 +1875,12 @@
18671875
<file role="test" name="tests/swoole_pdo_sqlite/coroutine.phpt" />
18681876
<file role="test" name="tests/swoole_pdo_sqlite/coroutine2.phpt" />
18691877
<file role="test" name="tests/swoole_pdo_sqlite/debugdumpparams_001.phpt" />
1870-
<file role="test" name="tests/swoole_pdo_sqlite/gc.phpt" />
18711878
<file role="test" name="tests/swoole_pdo_sqlite/gh9032.phpt" />
18721879
<file role="test" name="tests/swoole_pdo_sqlite/open_basedir.phpt" />
18731880
<file role="test" name="tests/swoole_pdo_sqlite/pdo_035.phpt" />
18741881
<file role="test" name="tests/swoole_pdo_sqlite/pdo_fetch_func_001.phpt" />
18751882
<file role="test" name="tests/swoole_pdo_sqlite/pdo_fetch_func_001_1.phpt" />
18761883
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite.inc" />
1877-
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_createaggregate.phpt" />
1878-
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_createaggregate_002.phpt" />
1879-
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_createcollation.phpt" />
1880-
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_createfunction.phpt" />
1881-
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_createfunction_002.phpt" />
1882-
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_createfunction_with_flags.phpt" />
18831884
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_extendederror_attr.phpt" />
18841885
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_filename_uri.phpt" />
18851886
<file role="test" name="tests/swoole_pdo_sqlite/pdo_sqlite_get_attribute.phpt" />
@@ -2462,6 +2463,7 @@
24622463
<file role="test" name="tests/swoole_thread/atomic_ctor.phpt" />
24632464
<file role="test" name="tests/swoole_thread/barrier.phpt" />
24642465
<file role="test" name="tests/swoole_thread/co-stream.phpt" />
2466+
<file role="test" name="tests/swoole_thread/co-user-yield.phpt" />
24652467
<file role="test" name="tests/swoole_thread/empty_args.phpt" />
24662468
<file role="test" name="tests/swoole_thread/exit.phpt" />
24672469
<file role="test" name="tests/swoole_thread/fatal_error_1.inc" />
@@ -2682,6 +2684,17 @@
26822684
<file role="src" name="thirdparty/nlohmann/json_fwd.hpp" />
26832685
<file role="src" name="thirdparty/nlohmann/thirdparty/hedley/hedley.hpp" />
26842686
<file role="src" name="thirdparty/nlohmann/thirdparty/hedley/hedley_undef.hpp" />
2687+
<file role="doc" name="thirdparty/pdo_oci/CREDITS" />
2688+
<file role="doc" name="thirdparty/pdo_oci/README.md" />
2689+
<file role="src" name="thirdparty/pdo_oci/oci_driver.c" />
2690+
<file role="src" name="thirdparty/pdo_oci/oci_statement.c" />
2691+
<file role="src" name="thirdparty/pdo_oci/pdo_oci.c" />
2692+
<file role="src" name="thirdparty/pdo_oci/php_pdo_oci_int.h" />
2693+
<file role="src" name="thirdparty/pdo_sqlite/php_pdo_sqlite.h" />
2694+
<file role="src" name="thirdparty/pdo_sqlite/php_pdo_sqlite_int.h" />
2695+
<file role="src" name="thirdparty/pdo_sqlite/sqlite_driver.c" />
2696+
<file role="src" name="thirdparty/pdo_sqlite/sqlite_sql_parser.c" />
2697+
<file role="src" name="thirdparty/pdo_sqlite/sqlite_statement.c" />
26852698
<file role="doc" name="thirdparty/php/LICENSE" />
26862699
<file role="src" name="thirdparty/php/curl/curl_arginfo.h" />
26872700
<file role="src" name="thirdparty/php/curl/curl_private.h" />
@@ -2702,45 +2715,25 @@
27022715
<file role="src" name="thirdparty/php/streams/php_streams_int.h" />
27032716
<file role="src" name="thirdparty/php/streams/plain_wrapper.c" />
27042717
<file role="src" name="thirdparty/php/zend/zend_execute.c" />
2705-
<file role="src" name="thirdparty/php81/pdo_oci/oci_driver.c" />
2706-
<file role="src" name="thirdparty/php81/pdo_oci/oci_statement.c" />
2707-
<file role="src" name="thirdparty/php81/pdo_oci/php_pdo_oci_int.h" />
27082718
<file role="src" name="thirdparty/php81/pdo_odbc/odbc_driver.c" />
27092719
<file role="src" name="thirdparty/php81/pdo_odbc/odbc_stmt.c" />
27102720
<file role="src" name="thirdparty/php81/pdo_odbc/php_pdo_odbc_int.h" />
27112721
<file role="src" name="thirdparty/php81/pdo_pgsql/pgsql_driver.c" />
27122722
<file role="src" name="thirdparty/php81/pdo_pgsql/pgsql_driver_arginfo.h" />
27132723
<file role="src" name="thirdparty/php81/pdo_pgsql/pgsql_statement.c" />
27142724
<file role="src" name="thirdparty/php81/pdo_pgsql/php_pdo_pgsql_int.h" />
2715-
<file role="src" name="thirdparty/php81/pdo_sqlite/php_pdo_sqlite_int.h" />
2716-
<file role="src" name="thirdparty/php81/pdo_sqlite/sqlite_driver.c" />
2717-
<file role="src" name="thirdparty/php81/pdo_sqlite/sqlite_driver.stub.php" />
2718-
<file role="src" name="thirdparty/php81/pdo_sqlite/sqlite_driver_arginfo.h" />
2719-
<file role="src" name="thirdparty/php81/pdo_sqlite/sqlite_statement.c" />
2720-
<file role="src" name="thirdparty/php83/pdo_oci/oci_driver.c" />
2721-
<file role="src" name="thirdparty/php83/pdo_oci/oci_statement.c" />
2722-
<file role="src" name="thirdparty/php83/pdo_oci/php_pdo_oci_int.h" />
27232725
<file role="src" name="thirdparty/php83/pdo_odbc/odbc_driver.c" />
27242726
<file role="src" name="thirdparty/php83/pdo_odbc/odbc_stmt.c" />
27252727
<file role="src" name="thirdparty/php83/pdo_odbc/php_pdo_odbc_int.h" />
27262728
<file role="src" name="thirdparty/php83/pdo_pgsql/pgsql_driver.c" />
27272729
<file role="src" name="thirdparty/php83/pdo_pgsql/pgsql_driver_arginfo.h" />
27282730
<file role="src" name="thirdparty/php83/pdo_pgsql/pgsql_statement.c" />
27292731
<file role="src" name="thirdparty/php83/pdo_pgsql/php_pdo_pgsql_int.h" />
2730-
<file role="src" name="thirdparty/php83/pdo_sqlite/php_pdo_sqlite_int.h" />
2731-
<file role="src" name="thirdparty/php83/pdo_sqlite/sqlite_driver.c" />
2732-
<file role="src" name="thirdparty/php83/pdo_sqlite/sqlite_driver.stub.php" />
2733-
<file role="src" name="thirdparty/php83/pdo_sqlite/sqlite_driver_arginfo.h" />
2734-
<file role="src" name="thirdparty/php83/pdo_sqlite/sqlite_statement.c" />
27352732
<file role="src" name="thirdparty/php84/curl/curl_arginfo.h" />
27362733
<file role="src" name="thirdparty/php84/curl/curl_private.h" />
27372734
<file role="src" name="thirdparty/php84/curl/interface.cc" />
27382735
<file role="src" name="thirdparty/php84/curl/multi.cc" />
27392736
<file role="src" name="thirdparty/php84/curl/php_curl.h" />
2740-
<file role="doc" name="thirdparty/php84/pdo_oci/LICENSE" />
2741-
<file role="src" name="thirdparty/php84/pdo_oci/oci_driver.c" />
2742-
<file role="src" name="thirdparty/php84/pdo_oci/oci_statement.c" />
2743-
<file role="src" name="thirdparty/php84/pdo_oci/php_pdo_oci_int.h" />
27442737
<file role="src" name="thirdparty/php84/pdo_odbc/odbc_driver.c" />
27452738
<file role="src" name="thirdparty/php84/pdo_odbc/odbc_stmt.c" />
27462739
<file role="src" name="thirdparty/php84/pdo_odbc/php_pdo_odbc_int.h" />
@@ -2749,12 +2742,6 @@
27492742
<file role="src" name="thirdparty/php84/pdo_pgsql/pgsql_sql_parser.c" />
27502743
<file role="src" name="thirdparty/php84/pdo_pgsql/pgsql_statement.c" />
27512744
<file role="src" name="thirdparty/php84/pdo_pgsql/php_pdo_pgsql_int.h" />
2752-
<file role="src" name="thirdparty/php84/pdo_sqlite/php_pdo_sqlite_int.h" />
2753-
<file role="src" name="thirdparty/php84/pdo_sqlite/sqlite_driver.c" />
2754-
<file role="src" name="thirdparty/php84/pdo_sqlite/sqlite_driver.stub.php" />
2755-
<file role="src" name="thirdparty/php84/pdo_sqlite/sqlite_driver_arginfo.h" />
2756-
<file role="src" name="thirdparty/php84/pdo_sqlite/sqlite_sql_parser.c" />
2757-
<file role="src" name="thirdparty/php84/pdo_sqlite/sqlite_statement.c" />
27582745
<file role="src" name="tools/analysis.php" />
27592746
<file role="src" name="tools/arginfo-check.php" />
27602747
<file role="src" name="tools/bootstrap.php" />

0 commit comments

Comments
 (0)