feat: release APISIX 3.6.0 (#10283)

diff --git a/.asf.yaml b/.asf.yaml
index 010df03..69f3f2c 100644
--- a/.asf.yaml
+++ b/.asf.yaml
@@ -53,6 +53,10 @@
           dismiss_stale_reviews: true
           require_code_owner_reviews: true
           required_approving_review_count: 2
+      release/3.6:
+        required_pull_request_reviews:
+          require_code_owner_reviews: true
+          required_approving_review_count: 2
       release/3.5:
         required_pull_request_reviews:
           require_code_owner_reviews: true
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 92bd849..2aafe95 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -23,6 +23,7 @@
 
 ## Table of Contents
 
+- [3.6.0](#360)
 - [3.5.0](#350)
 - [3.4.0](#340)
 - [3.3.0](#330)
@@ -72,6 +73,35 @@
 - [0.7.0](#070)
 - [0.6.0](#060)
 
+## 3.6.0
+
+### Change
+
+- :warning: Remove the `etcd.use_grpc` and no longer support communication with ETCD using protocols with gRPC: [#10015](https://github.com/apache/apisix/pull/10015)
+- :warning: Removing conf server, the data plane no longer supports communication with the data plane, and needs to be adjusted from `config_provider: control_plane` to `config_provider: etcd`: [#10012](https://github.com/apache/apisix/pull/10012)
+
+### Core
+
+- :sunrise: support configuring the buffer size of the access log: [#10225](https://github.com/apache/apisix/pull/10225)
+- :sunrise: Support for passing resolv.conf in dns discovery: [#9770](https://github.com/apache/apisix/pull/9770)
+- :sunrise: No longer relying on trust: [#10121](https://github.com/apache/apisix/pull/10065)
+- :sunrise: Strictly validate the input of core resources: [#10233](https://github.com/apache/apisix/pull/10233)
+- :sunrise: Add dubbo protocols Support in the xrpc [#9660](https://github.com/apache/apisix/pull/9660)
+
+### Plugins
+
+- :sunrise: Support https in traffic-split plugin: [#9115](https://github.com/apache/apisix/pull/9115)
+- :sunrise: Support for passing resolv.conf in dns discovery: [#9770](https://github.com/apache/apisix/pull/9770)
+- :sunrise: Support rewrite request body in external plugin:[#9990](https://github.com/apache/apisix/pull/9990)
+- :sunrise: Support set nginx variables in opentelemetry plugin: [#8871](https://github.com/apache/apisix/pull/8871)
+- :sunrise: Support unix sock host pattern in the chaitin-waf plugin: [#10161](https://github.com/apache/apisix/pull/10161)
+
+### Bugfixes
+
+- Fix graphql post request route matching exception: [#10198](https://github.com/apache/apisix/pull/10198)
+- Fix error on array of multiline string in `apisix.yaml`: [#10193](https://github.com/apache/apisix/pull/10193)
+- Fix provide error instead of nil panic when cache_zone is missing in proxy-cache plugin: [#10138](https://github.com/apache/apisix/pull/10138)
+
 ## 3.5.0
 
 ### Change
diff --git a/apisix/core/version.lua b/apisix/core/version.lua
index 5fa6af1..ff16402 100644
--- a/apisix/core/version.lua
+++ b/apisix/core/version.lua
@@ -20,5 +20,5 @@
 -- @module core.version
 
 return {
-    VERSION = "3.5.0"
+    VERSION = "3.6.0"
 }
diff --git a/docs/en/latest/building-apisix.md b/docs/en/latest/building-apisix.md
index 31de4b0..e4804ea 100644
--- a/docs/en/latest/building-apisix.md
+++ b/docs/en/latest/building-apisix.md
@@ -54,7 +54,7 @@
 Save the APISIX version to an environment variable to be used next:
 
 ```shell
-APISIX_VERSION='3.5.0'
+APISIX_VERSION='3.6.0'
 ```
 
 Clone the APISIX source code of this version into a new directory `apisix-APISIX_VERSION`:
diff --git a/docs/en/latest/config.json b/docs/en/latest/config.json
index bec485d..e1c8391 100644
--- a/docs/en/latest/config.json
+++ b/docs/en/latest/config.json
@@ -1,5 +1,5 @@
 {
-  "version": "3.5.0",
+  "version": "3.6.0",
   "sidebar": [
     {
       "type": "category",
diff --git a/docs/zh/latest/CHANGELOG.md b/docs/zh/latest/CHANGELOG.md
index 92bd259..ffee1eb 100644
--- a/docs/zh/latest/CHANGELOG.md
+++ b/docs/zh/latest/CHANGELOG.md
@@ -23,6 +23,7 @@
 
 ## Table of Contents
 
+- [3.6.0](#360)
 - [3.5.0](#350)
 - [3.4.0](#340)
 - [3.3.0](#330)
@@ -72,6 +73,35 @@
 - [0.7.0](#070)
 - [0.6.0](#060)
 
+## 3.6.0
+
+### Change
+
+- :warning: 移除 `etcd.use_grpc`,不再支持使用 gRPC 协议与 etcd 进行通信:[#10015](https://github.com/apache/apisix/pull/10015)
+- :warning: 移除 conf server,数据平面不再支持与数据平面进行通信,需要从 `config_provider: control_plane` 调整为 `config_provider: etcd`:[#10012](https://github.com/apache/apisix/pull/10012)
+
+### Core
+
+- :sunrise: 支持配置访问日志的缓冲区大小:[#10225](https://github.com/apache/apisix/pull/10225)
+- :sunrise: 支持在 DNS 发现中传递 resolv.conf:[#9770](https://github.com/apache/apisix/pull/9770)
+- :sunrise: 不再依赖 Rust:[#10121](https://github.com/apache/apisix/pull/10065)
+- :sunrise: 严格验证核心资源的输入:[#10233](https://github.com/apache/apisix/pull/10233)
+- :sunrise: 在 xrpc 中添加 dubbo 协议支持:[#9660](https://github.com/apache/apisix/pull/9660)
+
+### Plugins
+
+- :sunrise: 在 traffic-split 插件中支持 https:[#9115](https://github.com/apache/apisix/pull/9115)
+- :sunrise: 支持在 DNS 发现中传递 resolv.conf:[#9770](https://github.com/apache/apisix/pull/9770)
+- :sunrise: 在 ext-plugin 插件中支持重写请求体:[#9990](https://github.com/apache/apisix/pull/9990)
+- :sunrise: 在 opentelemetry 插件中支持设置 nginx 变量:[#8871](https://github.com/apache/apisix/pull/8871)
+- :sunrise: 在 chaitin-waf 插件中支持 unix sock 主机模式:[#10161](https://github.com/apache/apisix/pull/10161)
+
+### Bugfixes
+
+- 修复 GraphQL POST 请求路由匹配异常:[#10198](https://github.com/apache/apisix/pull/10198)
+- 修复 `apisix.yaml` 中多行字符串数组的错误:[#10193](https://github.com/apache/apisix/pull/10193)
+- 修复在 proxy-cache 插件中缺少 cache_zone 时提供错误而不是 nil panic:[#10138](https://github.com/apache/apisix/pull/10138)
+
 ## 3.5.0
 
 ### Change
diff --git a/docs/zh/latest/building-apisix.md b/docs/zh/latest/building-apisix.md
index 2f844d4..abeac20 100644
--- a/docs/zh/latest/building-apisix.md
+++ b/docs/zh/latest/building-apisix.md
@@ -53,7 +53,7 @@
 然后,创建一个目录并设置环境变量 `APISIX_VERSION`:
 
 ```shell
-APISIX_VERSION='3.5.0'
+APISIX_VERSION='3.6.0'
 mkdir apisix-${APISIX_VERSION}
 ```
 
diff --git a/docs/zh/latest/config.json b/docs/zh/latest/config.json
index 136c40e..1ff81e6 100644
--- a/docs/zh/latest/config.json
+++ b/docs/zh/latest/config.json
@@ -1,5 +1,5 @@
 {
-  "version": "3.5.0",
+  "version": "3.6.0",
   "sidebar": [
     {
       "type": "category",
diff --git a/rockspec/apisix-3.6.0-0.rockspec b/rockspec/apisix-3.6.0-0.rockspec
new file mode 100644
index 0000000..71b4c35
--- /dev/null
+++ b/rockspec/apisix-3.6.0-0.rockspec
@@ -0,0 +1,103 @@
+--
+-- Licensed to the Apache Software Foundation (ASF) under one or more
+-- contributor license agreements.  See the NOTICE file distributed with
+-- this work for additional information regarding copyright ownership.
+-- The ASF licenses this file to You under the Apache License, Version 2.0
+-- (the "License"); you may not use this file except in compliance with
+-- the License.  You may obtain a copy of the License at
+--
+--     http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+--
+
+package = "apisix"
+version = "3.6.0-0"
+supported_platforms = {"linux", "macosx"}
+
+source = {
+    url = "git://github.com/apache/apisix",
+    branch = "3.6.0",
+}
+
+description = {
+    summary = "Apache APISIX is a cloud-native microservices API gateway, delivering the ultimate performance, security, open source and scalable platform for all your APIs and microservices.",
+    homepage = "https://github.com/apache/apisix",
+    license = "Apache License 2.0",
+}
+
+dependencies = {
+    "lua-resty-ctxdump = 0.1-0",
+    "api7-lua-resty-dns-client = 7.0.1",
+    "lua-resty-template = 2.0",
+    "lua-resty-etcd = 1.10.5",
+    "api7-lua-resty-http = 0.2.2-0",
+    "lua-resty-balancer = 0.04",
+    "lua-resty-ngxvar = 0.5.2",
+    "lua-resty-jit-uuid = 0.0.7",
+    "lua-resty-healthcheck-api7 = 3.0.0",
+    "api7-lua-resty-jwt = 0.2.5",
+    "lua-resty-hmac-ffi = 0.06-1",
+    "lua-resty-cookie = 0.2.0-1",
+    "lua-resty-session = 3.10",
+    "opentracing-openresty = 0.1",
+    "lua-resty-radixtree = 2.8.2",
+    "lua-protobuf = 0.5.0-1",
+    "lua-resty-openidc = 1.7.6-3",
+    "luafilesystem = 1.7.0-2",
+    "api7-lua-tinyyaml = 0.4.4",
+    "nginx-lua-prometheus = 0.20230607-1",
+    "jsonschema = 0.9.8",
+    "lua-resty-ipmatcher = 0.6.1",
+    "lua-resty-kafka = 0.22-0",
+    "lua-resty-logger-socket = 2.0.1-0",
+    "skywalking-nginx-lua = 0.6.0",
+    "base64 = 1.5-2",
+    "binaryheap = 0.4",
+    "api7-dkjson = 0.1.1",
+    "resty-redis-cluster = 1.05-1",
+    "lua-resty-expr = 1.3.2",
+    "graphql = 0.0.2",
+    "argparse = 0.7.1-1",
+    "luasocket = 3.1.0-1",
+    "luasec = 0.9-1",
+    "lua-resty-consul = 0.3-2",
+    "penlight = 1.13.1",
+    "ext-plugin-proto = 0.6.1",
+    "casbin = 1.41.8-1",
+    "inspect == 3.1.1",
+    "lualdap = 1.2.6-1",
+    "lua-resty-rocketmq = 0.3.0-0",
+    "opentelemetry-lua = 0.2-3",
+    "net-url = 0.9-1",
+    "xml2lua = 1.5-2",
+    "nanoid = 0.1-1",
+    "lua-resty-mediador = 0.1.2-1",
+    "lua-resty-ldap = 0.1.0-0",
+    "lua-resty-t1k = 1.1.0"
+}
+
+build = {
+    type = "make",
+    build_variables = {
+        CFLAGS="$(CFLAGS)",
+        LIBFLAG="$(LIBFLAG)",
+        LUA_LIBDIR="$(LUA_LIBDIR)",
+        LUA_BINDIR="$(LUA_BINDIR)",
+        LUA_INCDIR="$(LUA_INCDIR)",
+        LUA="$(LUA)",
+        OPENSSL_INCDIR="$(OPENSSL_INCDIR)",
+        OPENSSL_LIBDIR="$(OPENSSL_LIBDIR)",
+    },
+    install_variables = {
+        ENV_INST_PREFIX="$(PREFIX)",
+        ENV_INST_BINDIR="$(BINDIR)",
+        ENV_INST_LIBDIR="$(LIBDIR)",
+        ENV_INST_LUADIR="$(LUADIR)",
+        ENV_INST_CONFDIR="$(CONFDIR)",
+    },
+}