diff --git a/CMakeLists.txt b/CMakeLists.txt
index 85635b046..3cf1d4eaa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,7 +1,7 @@
PROJECT(libopenswoole)
ENABLE_LANGUAGE(ASM)
-set(SWOOLE_VERSION 22.0.0)
+set(SWOOLE_VERSION 22.1.0)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -g")
diff --git a/include/swoole_version.h b/include/swoole_version.h
index b85faf678..722f70d76 100644
--- a/include/swoole_version.h
+++ b/include/swoole_version.h
@@ -13,11 +13,11 @@
#define SWOOLE_VERSION_H_
#define SWOOLE_MAJOR_VERSION 22
-#define SWOOLE_MINOR_VERSION 0
+#define SWOOLE_MINOR_VERSION 1
#define SWOOLE_RELEASE_VERSION 0
#define SWOOLE_EXTRA_VERSION ""
-#define SWOOLE_VERSION "22.0.0"
-#define SWOOLE_VERSION_ID 220000
+#define SWOOLE_VERSION "22.1.0"
+#define SWOOLE_VERSION_ID 220100
#define SWOOLE_API_VERSION_ID 0x202012a
#define SWOOLE_BUG_REPORT \
diff --git a/package.xml b/package.xml
index 9e842d962..cabdcecee 100644
--- a/package.xml
+++ b/package.xml
@@ -12,10 +12,10 @@
doubaokun@php.net
yes
- 2022-12-21
-
+ 2023-11-08
+
- 22.0.0
+ 22.1.0
22.0
@@ -24,53 +24,12 @@
Apache 2.0
- . Rename `co\run` to be `co::run`
- . Security update: Remove embedded PHP codes, hot code execution with eval and remove `ini` option `enable_library`
- . Added server Constants class: OpenSwoole\Constant
- . Use \OpenSwoole as the main namespace, although \Swoole is still supported
- . Pre-check server options
- . Security update: New server option `enable_server_token`, disabled by default
- . Built-in Psr7 API support added
- . Boost ASM library upgrade
- . New Psr API: $server->setHandler(\Psr\Http\Server\RequestHandlerInterface $handler)
- . New Psr API: $server->handle(callable $callback)
- . Redis Server API: $server->setHandler() -> $server->addCommand()
- . Redis Server API: $server->getHandler() -> $server->getCommand()
- . Disable sockets_*, exec, shell_exec, `gethostbyname` coroutines hook by default, remove HOOK_BLOCKING_FUNCTION and HOOK_SOCKETS in HOOK_ALL; Enable them explicitly if they are used
- . Remove deprecated custom coroutine MySQL client, prefer the hooked native coroutine MySQL client
- . Remove deprecated custom coroutine Redis client, prefer the hooked native coroutine Redis client
- . Remove deprecated experimental coroutine HTTP server
- . Remove deprecated experimental Redis protocol server
- . Remove deprecated function `swoole_timer_set()` and `Timer->set()`
- . Remove deprecated function `swoole_event_rshutdown`
- . Remove deprecated function `Swoole\Runtime::fread`, `Swoole\Runtime::fwrite`, `Swoole\Runtime::fgets`
- . Remove deprecated function `Coroutine::suspend`, use `Coroutine::yield`
- . Remove deprecated function `Coroutine::getuid`, use `Coroutine::getCid`
- . Remove deprecated function `Coroutine::listCoroutines`, use `Coroutine::list`
- . Remove deprecated function `Table::exist`, use `Table::exists`
- . Remove deprecated function `Table::delete`, use `Table::del`
- . Remove deprecated function `Server->connection_info()`, use `Server->getClientInfo()`
- . Remove deprecated function `Server->connection_list()`, use `Server->getClientList()`
- . Remove deprecated function `Server->exist`, use `Server->exists`
- . Move global constants under namespace: SWOOLE_CHANNEL_OK -> `OpenSwoole\Coroutine\Channel::CHANNEL_OK`, SWOOLE_CHANNEL_TIMEOUT -> `OpenSwoole\Coroutine\Channel::CHANNEL_TIMEOUT`, SWOOLE_CHANNEL_CLOSED -> `OpenSwoole\Coroutine\Channel::CHANNEL_CLOSED`...
- . Move global constants under namespace: SWOOLE_DEFAULT_MAX_CORO_NUM -> `OpenSwoole\Coroutine::DEFAULT_MAX_CORO_NUM`...
- . Remove `$server->getLastError()`, use `OpenSwoole\Util::getLastErrorCode()`
- . Remove `$process->name()`, use `OpenSwoole\Util::setProcessName()`
- . New Util API class: added `OpenSwoole\Util` class
- . Remove option `swoole.use_shortname`, remove `Co\*` alias. `go`, `chan`, `defer`, `co::*` are available by default
- . Remove `swoole_async_dns_lookup_coro`, use `OpenSwoole\Coroutine::dnsLookup` or `OpenSwoole\Coroutine\System::dnsLookup`; remove `swoole_async_set`, use `OpenSwoole\Until::setAio([])` or `$server->set([])` for `aio` options;
- . Rename PHP `ini` options from `swoole.*` to be `openswoole.*`
- . Remove `swoole_clear_dns_cache`, use OpenSwoole\Coroutine::clearDNSCache` or `OpenSwoole\Coroutine\System::clearDNSCache`
- . Remove custom unserialize functions: `swoole_substr_unserialize` and `swoole_substr_unserialize`
- . Remove `swoole_client_select` and `swoole_select`, use `OpenSwoole\Client::select`
- . Remove `swoole_last_error`, use `OpenSwoole\Util::getLastErrorCode`
- . `OpenSwoole\Event::wait();` should be added explicitly to wait for all the IO events
- . Use `\OpenSwoole\Server::SIMPLE_MODE` and `\OpenSwoole\Server::POOL_MODE` at server structure config
- . Fix: ignore user set illegal HTTP header at server
- . Fix: ignore user set encoding header at client if it is not supported
- . Remove hard requirements and links of json and remove compile flag `--enable-swoole-json`
- . Rename compile flag `--enable-swoole-curl` to be `--enable-hook-curl`
- . Fix convert double sec to long microseconds in hooked usleep by @shandyDev
+ . PHP 8.3 support
+ . Latest curl support
+ . Fix php_url_encode_hash_ex call for 8.3 @remicollet
+ . Add missing header for GCC 13 @remicollet @erfanmola
+ . Implement draft statements object LOB for postgresql @mrVrAlex
+ . Bug fix for postgresql
@@ -81,6 +40,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -216,6 +188,9 @@
+
+
+
@@ -1738,25 +1713,12 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
- 7.4.0
+ 8.1.0
1.4.0
@@ -1765,11 +1727,11 @@
openswoole
-
+
-
-
-
-
+
+
+
+
diff --git a/tests/swoole_http2_server/http2_headers.phpt b/tests/swoole_http2_server/http2_headers.phpt
index f512a6846..c020c86f2 100644
--- a/tests/swoole_http2_server/http2_headers.phpt
+++ b/tests/swoole_http2_server/http2_headers.phpt
@@ -49,4 +49,4 @@ date: %s
content-type: text/html
content-length: %d
-
Hello openswoole.
\ No newline at end of file
+Hello openswoole.