diff --git a/CMakeLists.txt b/CMakeLists.txt
index 00874627236..e6076086e91 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,7 +1,7 @@
PROJECT(libswoole)
ENABLE_LANGUAGE(ASM)
-set(SWOOLE_VERSION 4.6.4-dev)
+set(SWOOLE_VERSION 4.6.4)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -g")
diff --git a/ext-src/php_swoole_library.h b/ext-src/php_swoole_library.h
index 8b4e4efc131..5770f295562 100644
--- a/ext-src/php_swoole_library.h
+++ b/ext-src/php_swoole_library.h
@@ -2,7 +2,7 @@
* Generated by build-library.php, Please DO NOT modify!
*/
-/* $Id: 2d8eaab25259a67bdb984f605d463d0bfb147c3c */
+/* $Id: c0b3306481ecd77cc88ab51ba15403bcc33319a9 */
static const char* swoole_library_source_constants =
"\n"
@@ -1905,13 +1905,11 @@ static const char* swoole_library_source_core_coroutine_http_functions =
"use Swoole\\Coroutine\\Http\\Client\\Exception;\n"
"\n"
"/**\n"
- " * @param $url\n"
- " * @param $data\n"
- " * @param mixed $method\n"
+ " * @param mixed $data\n"
" * @throws Exception\n"
" * @return mixed\n"
" */\n"
- "function request($url, $method, $data = null, array $options = null, array $headers = null, array $cookies = null)\n"
+ "function request(string $url, string $method, $data = null, array $options = null, array $headers = null, array $cookies = null)\n"
"{\n"
" $info = parse_url($url);\n"
" if ($info['scheme'] == 'http') {\n"
@@ -1934,29 +1932,31 @@ static const char* swoole_library_source_core_coroutine_http_functions =
" if (is_array($cookies)) {\n"
" $client->setCookies($options);\n"
" }\n"
- " if ($client->get($info['path'] . '?' . $info['query'])) {\n"
+ " $request_url = swoole_array_default_value($info, 'path', '/');\n"
+ " if (!empty($info['query'])) {\n"
+ " $request_url .= '?' . $info['query'];\n"
+ " }\n"
+ " if ($client->execute($request_url)) {\n"
" return $client;\n"
" }\n"
" return false;\n"
"}\n"
"\n"
"/**\n"
- " * @param $url\n"
- " * @param $data\n"
+ " * @param mixed $data\n"
" * @throws Exception\n"
" * @return Client|false|mixed\n"
" */\n"
- "function post($url, $data, array $options = null, array $headers = null, array $cookies = null)\n"
+ "function post(string $url, $data, array $options = null, array $headers = null, array $cookies = null)\n"
"{\n"
" return request($url, 'POST', $data, $options, $headers, $cookies);\n"
"}\n"
"\n"
"/**\n"
- " * @param $url\n"
" * @throws Exception\n"
" * @return Client|false|mixed\n"
" */\n"
- "function get($url, array $options = null, array $headers = null, array $cookies = null)\n"
+ "function get(string $url, array $options = null, array $headers = null, array $cookies = null)\n"
"{\n"
" return request($url, 'GET', null, $options, $headers, $cookies);\n"
"}\n";
diff --git a/include/swoole_version.h b/include/swoole_version.h
index a167fbfe255..9969b6808d6 100644
--- a/include/swoole_version.h
+++ b/include/swoole_version.h
@@ -21,8 +21,8 @@
#define SWOOLE_MAJOR_VERSION 4
#define SWOOLE_MINOR_VERSION 6
#define SWOOLE_RELEASE_VERSION 4
-#define SWOOLE_EXTRA_VERSION "dev"
-#define SWOOLE_VERSION "4.6.4-dev"
+#define SWOOLE_EXTRA_VERSION ""
+#define SWOOLE_VERSION "4.6.4"
#define SWOOLE_VERSION_ID 40604
#define SWOOLE_API_VERSION_ID 0x202012a
diff --git a/package.xml b/package.xml
index ce89d8b2e26..fad66469610 100644
--- a/package.xml
+++ b/package.xml
@@ -42,10 +42,10 @@
shenzhe163@gmail.com
yes
- 2021-02-08
-
+ 2021-03-11
+
- 4.6.3
+ 4.6.4
4.0
@@ -54,28 +54,24 @@
Apache2.0
- New APIs
- ---
- + Added Swoole\Coroutine\go function (swoole/library@92fd0de) (@matyhtf)
-
Enhancement
---
- + Added option compression_min_length for HTTP Server (#4033) (@matyhtf)
- + Allowed setting content-length HTTP header in application layer (#4041) (@doubaokun)
+ + Supported ARM 64 build (#4057) (@devnexen)
+ + Supported set open_http_protocol in Swoole TCP Server (#4063) (@matyhtf)
+ + Supported ssl client only set certificate (swoole/swoole-src@91704ac) (@matyhtf)
+ + Supported ssl client only set certificate (swoole/swoole-src@91704ac) (@matyhtf)
+ * Supported tcp_defer_accept option for FreeBSD (#4049) (@devnexen)
Fixed
---
- * Fixed coredump when program reach file open limitation (swoole/swoole-src@709813f) (@matyhtf)
- * Fixed JIT being disabled (#4029) (@twose)
- * Fixed Response::create() bug (swoole/swoole-src@a630b5b) (@matyhtf)
- * Fixed task process id false positives (#4040) (@doubaokun)
- * Fixed coredump with native curl hook (#4042) (@Yurunsoft)
- * Fixed README (#4046) (@asheroto)
- * Fixed native-curl crash on PHP8 (#4045) (@matyhtf)
-
- Kernel
- ---
- * Optimized ssl_connect/ssl_shutdown (#4030) (@matyhtf)
+ * Fixed Proxy-Authorization missing when use Coroutine\Http\Client (swoole/swoole-src@edc0552) (@matyhtf)
+ * Fixed memory allocation issues with Swoole\Table (swoole/swoole-src@3e7770f) (@matyhtf)
+ * Fixed crash when Coroutine\Http2\Client connects concurrently (swoole/swoole-src@630536d) (@matyhtf)
+ * Fixed enable_ssl_encrypt with DTLS (swoole/swoole-src@842733b) (@matyhtf)
+ * Fixed Coroutine\Barrier mem leak (swoole/library#94) (@Appla) (@FMiS)
+ * Fixed the offset error caused by CURLOPT_PORT and CURLOPT_URL order (swoole/library#96) (@sy-records)
+ * Fixed Table::get($key, $field) when field type is float (swoole/swoole-src@08ea20c) (@matyhtf)
+ * Fixed Swoole\Table mem leaks (swoole/swoole-src@d78ca8c) (@matyhtf)
@@ -1077,6 +1073,7 @@
+
@@ -1543,6 +1540,8 @@
+
+
@@ -1590,6 +1589,7 @@
+
@@ -1825,6 +1825,7 @@
+
@@ -1995,12 +1996,14 @@
+
+