You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@apisix.apache.org by sp...@apache.org on 2021/02/01 05:36:35 UTC

[apisix] branch v2.3 created (now 40baa38)

This is an automated email from the ASF dual-hosted git repository.

spacewander pushed a change to branch v2.3
in repository https://gitbox.apache.org/repos/asf/apisix.git.


      at 40baa38  feat: release 2.3

This branch includes the following new commits:

     new 40baa38  feat: release 2.3

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[apisix] 01/01: feat: release 2.3

Posted by sp...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

spacewander pushed a commit to branch v2.3
in repository https://gitbox.apache.org/repos/asf/apisix.git

commit 40baa3804015648231059641e35b1d7349628611
Author: spacewander <sp...@gmail.com>
AuthorDate: Mon Feb 1 13:35:37 2021 +0800

    feat: release 2.3
    
    Signed-off-by: spacewander <sp...@gmail.com>
---
 CHANGELOG.md                   | 39 +++++++++++++++++++
 CHANGELOG_CN.md                | 39 +++++++++++++++++++
 README.md                      |  8 ++--
 README_CN.md                   |  8 ++--
 apisix/core/version.lua        |  2 +-
 doc/how-to-build.md            | 16 ++++----
 doc/zh-cn/how-to-build.md      | 16 ++++----
 rockspec/apisix-2.3-0.rockspec | 85 ++++++++++++++++++++++++++++++++++++++++++
 8 files changed, 188 insertions(+), 25 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index b44d358..8dcbd36 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -19,6 +19,7 @@
 
 # Table of Contents
 
+- [2.3.0](#230)
 - [2.2.0](#220)
 - [2.1.0](#210)
 - [2.0.0](#200)
@@ -34,6 +35,44 @@
 - [0.7.0](#070)
 - [0.6.0](#060)
 
+## 2.3.0
+
+### Change
+
+- fix: use luajit by default when run apisix [#3335](https://github.com/apache/apisix/pull/3335)
+- feat: use luasocket instead of curl in etcd.lua [#2965](https://github.com/apache/apisix/pull/2965)
+
+### Core
+
+- :sunrise: feat: support to communicate with etcd by TLS without verification in command line [#3415](https://github.com/apache/apisix/pull/3415)
+- :sunrise: feat: chaos test on route could still works when etcd is down [#3404](https://github.com/apache/apisix/pull/3404)
+- :sunrise: feat: ewma use p2c to improve performance [#3300](https://github.com/apache/apisix/pull/3300)
+- :sunrise: feat: support specifying https in upstream to talk with https backend [#3430](https://github.com/apache/apisix/pull/3430)
+- :sunrise: feat: allow customizing lua_package_path & lua_package_cpath [#3417](https://github.com/apache/apisix/pull/3417)
+- :sunrise: feat: allow to pass SNI in HTTPS proxy [#3420](https://github.com/apache/apisix/pull/3420)
+- :sunrise: feat: support gRPCS [#3411](https://github.com/apache/apisix/pull/3411)
+- :sunrise: feat: allow getting health check status via control API [#3345](https://github.com/apache/apisix/pull/3345)
+- :sunrise: feat: support dubbo [#3224](https://github.com/apache/apisix/pull/3224)
+- :sunrise: feat: load balance by least connections [#3304](https://github.com/apache/apisix/pull/3304)
+
+### Plugin
+
+- :sunrise: feat: kafka-logger implemented reuse kafka producer [#3429](https://github.com/apache/apisix/pull/3429)
+- :sunrise: feat(authz-keycloak): dynamic scope and resource mapping. [#3308](https://github.com/apache/apisix/pull/3308)
+- :sunrise: feat: proxy-rewrite host support host with port [#3428](https://github.com/apache/apisix/pull/3428)
+- :sunrise: feat(fault-injection): support conditional fault injection using nginx variables [#3363](https://github.com/apache/apisix/pull/3363)
+
+### Bugfix
+
+- fix(standalone): require consumer's id to be the same as username [#3394](https://github.com/apache/apisix/pull/3394)
+- fix: support upstream_id & consumer with grpc [#3387](https://github.com/apache/apisix/pull/3387)
+- fix: set conf info when global rule is hit without matched rule [#3332](https://github.com/apache/apisix/pull/3332)
+- fix: avoid caching outdated discovery upstream nodes [#3295](https://github.com/apache/apisix/pull/3295)
+- fix: create the health checker in `access` phase [#3240](https://github.com/apache/apisix/pull/3240)
+- fix: make set_more_retries() work when upstream_type is chash [#2676](https://github.com/apache/apisix/pull/2676)
+
+For more changes, please refer to [Milestone](https://github.com/apache/apisix/milestone/12)
+
 ## 2.2.0
 
 ### Change
diff --git a/CHANGELOG_CN.md b/CHANGELOG_CN.md
index a14ebc7..e7b450a 100644
--- a/CHANGELOG_CN.md
+++ b/CHANGELOG_CN.md
@@ -19,6 +19,7 @@
 
 # Table of Contents
 
+- [2.3.0](#230)
 - [2.2.0](#220)
 - [2.1.0](#210)
 - [2.0.0](#200)
@@ -34,6 +35,44 @@
 - [0.7.0](#070)
 - [0.6.0](#060)
 
+## 2.3.0
+
+### Change
+
+- 默认使用 LuaJIT 运行命令行 [#3335](https://github.com/apache/apisix/pull/3335)
+- 命令行采用 luasocket 而不是 curl 访问 etcd [#2965](https://github.com/apache/apisix/pull/2965)
+
+### Core
+
+- :sunrise: 命令行中访问 etcd 可以禁用 HTTPS 检验 [#3415](https://github.com/apache/apisix/pull/3415)
+- :sunrise: 添加 etcd 无法连接时的 Chaos 测试 [#3404](https://github.com/apache/apisix/pull/3404)
+- :sunrise: ewma 负载均衡算法更新 [#3300](https://github.com/apache/apisix/pull/3300)
+- :sunrise: 允许在 Upstream 中配置 HTTPS scheme 来跟 HTTPS 后端通信 [#3430](https://github.com/apache/apisix/pull/3430)
+- :sunrise: 允许自定义 lua_package_path & lua_package_cpath [#3417](https://github.com/apache/apisix/pull/3417)
+- :sunrise: HTTPS 代理时传递 SNI [#3420](https://github.com/apache/apisix/pull/3420)
+- :sunrise: 支持 gRPCS [#3411](https://github.com/apache/apisix/pull/3411)
+- :sunrise: 支持通过 control API 获得健康检查状态 [#3345](https://github.com/apache/apisix/pull/3345)
+- :sunrise: 支持代理 HTTP 到 dubbo 后端 [#3224](https://github.com/apache/apisix/pull/3224)
+- :sunrise: 支持最少连接负载均衡算法 [#3304](https://github.com/apache/apisix/pull/3304)
+
+### Plugin
+
+- :sunrise: kafka-logger 支持复用 kafka 生产者对象 [#3429](https://github.com/apache/apisix/pull/3429)
+- :sunrise: authz-keycloak 支持动态 scope & resource 映射 [#3308](https://github.com/apache/apisix/pull/3308)
+- :sunrise: proxy-rewrite 支持在域名中带端口 [#3428](https://github.com/apache/apisix/pull/3428)
+- :sunrise: fault-injection 支持通过变量条件动态做错误注入 [#3363](https://github.com/apache/apisix/pull/3363)
+
+### Bugfix
+
+- 修复 standalone 下 consumer 的 id 跟 username 可以不一致的问题 [#3394](https://github.com/apache/apisix/pull/3394)
+- gRPC 中可以用 upstream_id & consumer [#3387](https://github.com/apache/apisix/pull/3387)
+- 修复没有匹配规则时命中 global rule 报错的问题 [#3332](https://github.com/apache/apisix/pull/3332)
+- 避免缓存过期的服务发现得到的节点 [#3295](https://github.com/apache/apisix/pull/3295)
+- 应该在 access 阶段创建 health checker [#3240](https://github.com/apache/apisix/pull/3240)
+- 修复 chash 负载均衡算法时重试的问题 [#2676](https://github.com/apache/apisix/pull/2676)
+
+更多的变动可以参考[里程碑](https://github.com/apache/apisix/milestone/12)
+
 ## 2.2.0
 
 ### Change
diff --git a/README.md b/README.md
index 13e1c50..a148c7a 100644
--- a/README.md
+++ b/README.md
@@ -148,9 +148,9 @@ There are several ways to install the Apache Release version of APISIX:
    - Download the latest source code release package:
 
      ```shell
-     $ mkdir apisix-2.2
-     $ wget https://downloads.apache.org/apisix/2.2/apache-apisix-2.2-src.tgz
-     $ tar zxvf apache-apisix-2.2-src.tgz -C apisix-2.2
+     $ mkdir apisix-2.3
+     $ wget https://downloads.apache.org/apisix/2.3/apache-apisix-2.3-src.tgz
+     $ tar zxvf apache-apisix-2.3-src.tgz -C apisix-2.3
      ```
 
    - Install the dependencies:
@@ -186,7 +186,7 @@ There are several ways to install the Apache Release version of APISIX:
    - install APISIX:
 
    ```shell
-   $ sudo yum install -y https://github.com/apache/apisix/releases/download/2.2/apisix-2.2-0.x86_64.rpm
+   $ sudo yum install -y https://github.com/apache/apisix/releases/download/2.3/apisix-2.3-0.x86_64.rpm
    ```
 
    - check version of APISIX:
diff --git a/README_CN.md b/README_CN.md
index 9407d85..23f70a7 100644
--- a/README_CN.md
+++ b/README_CN.md
@@ -146,9 +146,9 @@ CentOS 7, Ubuntu 16.04, Ubuntu 18.04, Debian 9, Debian 10, macOS, **ARM64** Ubun
    - 下载最新的源码发布包:
 
      ```shell
-     $ mkdir apisix-2.2
-     $ wget https://downloads.apache.org/apisix/2.2/apache-apisix-2.2-src.tgz
-     $ tar zxvf apache-apisix-2.2-src.tgz -C apisix-2.2
+     $ mkdir apisix-2.3
+     $ wget https://downloads.apache.org/apisix/2.3/apache-apisix-2.3-src.tgz
+     $ tar zxvf apache-apisix-2.3-src.tgz -C apisix-2.3
      ```
 
    - 安装运行时依赖的 Lua 库:
@@ -184,7 +184,7 @@ CentOS 7, Ubuntu 16.04, Ubuntu 18.04, Debian 9, Debian 10, macOS, **ARM64** Ubun
    - 安装 APISIX:
 
    ```shell
-   $ sudo yum install -y https://github.com/apache/apisix/releases/download/2.2/apisix-2.2-0.x86_64.rpm
+   $ sudo yum install -y https://github.com/apache/apisix/releases/download/2.3/apisix-2.3-0.x86_64.rpm
    ```
 
    - 检查 APISIX 的版本号:
diff --git a/apisix/core/version.lua b/apisix/core/version.lua
index d7b6941..e419532 100644
--- a/apisix/core/version.lua
+++ b/apisix/core/version.lua
@@ -15,5 +15,5 @@
 -- limitations under the License.
 --
 return {
-    VERSION = "2.2"
+    VERSION = "2.3"
 }
diff --git a/doc/how-to-build.md b/doc/how-to-build.md
index 0f1c33e..cf9562c 100644
--- a/doc/how-to-build.md
+++ b/doc/how-to-build.md
@@ -34,22 +34,22 @@ You can install Apache APISIX in a variety of ways, including source code packag
 You need to download the Apache source release first:
 
 ```shell
-$ mkdir apisix-2.2
-$ wget https://downloads.apache.org/apisix/2.2/apache-apisix-2.2-src.tgz
-$ tar zxvf apache-apisix-2.2-src.tgz -C apisix-2.2
+$ mkdir apisix-2.3
+$ wget https://downloads.apache.org/apisix/2.3/apache-apisix-2.3-src.tgz
+$ tar zxvf apache-apisix-2.3-src.tgz -C apisix-2.3
 ```
 
 Install the Lua libraries that the runtime depends on:
 
 ```shell
-cd apache-apisix-2.2
+cd apache-apisix-2.3
 make deps
 ```
 
 ### Installation via RPM package (CentOS 7)
 
 ```shell
-sudo yum install -y https://github.com/apache/apisix/releases/download/2.2/apisix-2.2-0.x86_64.rpm
+sudo yum install -y https://github.com/apache/apisix/releases/download/2.3/apisix-2.3-0.x86_64.rpm
 ```
 
 ### Installation via Luarocks (macOS not supported)
@@ -65,11 +65,11 @@ sudo sh -c "$(curl -fsSL https://raw.githubusercontent.com/apache/apisix/master/
 > Install the specified version via Luarocks:
 
 ```shell
-# Install version 2.2
-sudo luarocks install --lua-dir=/path/openresty/luajit apisix 2.2
+# Install version 2.3
+sudo luarocks install --lua-dir=/path/openresty/luajit apisix 2.3
 
 # old luarocks not support the `lua-dir` parameter, you can remove this option
-sudo luarocks install apisix 2.2
+sudo luarocks install apisix 2.3
 ```
 
 ## 3. Manage (start/stop) APISIX Server
diff --git a/doc/zh-cn/how-to-build.md b/doc/zh-cn/how-to-build.md
index 3badf4a..497f588 100644
--- a/doc/zh-cn/how-to-build.md
+++ b/doc/zh-cn/how-to-build.md
@@ -34,22 +34,22 @@ Apache APISIX 的运行环境需要 Nginx 和 etcd,
 你需要先下载 Apache Release 源码包:
 
 ```shell
-$ mkdir apisix-2.2
-$ wget https://downloads.apache.org/apisix/2.2/apache-apisix-2.2-src.tgz
-$ tar zxvf apache-apisix-2.2-src.tgz -C apisix-2.2
+$ mkdir apisix-2.3
+$ wget https://downloads.apache.org/apisix/2.3/apache-apisix-2.3-src.tgz
+$ tar zxvf apache-apisix-2.3-src.tgz -C apisix-2.3
 ```
 
 安装运行时依赖的 Lua 库:
 
 ```
-cd apache-apisix-2.2
+cd apache-apisix-2.3
 make deps
 ```
 
 ### 通过 RPM 包安装(CentOS 7)
 
 ```shell
-sudo yum install -y https://github.com/apache/apisix/releases/download/2.2/apisix-2.2-0.x86_64.rpm
+sudo yum install -y https://github.com/apache/apisix/releases/download/2.3/apisix-2.3-0.x86_64.rpm
 ```
 
 ### 通过 Luarocks 安装 (不支持 macOS)
@@ -65,11 +65,11 @@ sudo sh -c "$(curl -fsSL https://raw.githubusercontent.com/apache/apisix/master/
 > 通过 Luarocks 安装指定的版本:
 
 ```shell
-# 安装 apisix 的 2.2 版本
-sudo luarocks install --lua-dir=/path/openresty/luajit apisix 2.2
+# 安装 apisix 的 2.3 版本
+sudo luarocks install --lua-dir=/path/openresty/luajit apisix 2.3
 
 # 老版本 luarocks 可能不支持 `lua-dir` 参数,可以删除该选项
-sudo luarocks install apisix 2.2
+sudo luarocks install apisix 2.3
 ```
 
 ## 3. 管理(启动、关闭等)APISIX 服务
diff --git a/rockspec/apisix-2.3-0.rockspec b/rockspec/apisix-2.3-0.rockspec
new file mode 100644
index 0000000..97d11ec
--- /dev/null
+++ b/rockspec/apisix-2.3-0.rockspec
@@ -0,0 +1,85 @@
+--
+-- 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 = "2.3-0"
+supported_platforms = {"linux", "macosx"}
+
+source = {
+    url = "git://github.com/apache/apisix",
+    branch = "2.3",
+}
+
+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",
+    "lua-resty-template = 1.9",
+    "lua-resty-etcd = 1.4.3",
+    "lua-resty-balancer = 0.02rc5",
+    "lua-resty-ngxvar = 0.5.2",
+    "lua-resty-jit-uuid = 0.0.7",
+    "lua-resty-healthcheck-api7 = 2.2.0",
+    "lua-resty-jwt = 0.2.0",
+    "lua-resty-hmac-ffi = 0.05",
+    "lua-resty-cookie = 0.1.0",
+    "lua-resty-session = 2.24",
+    "opentracing-openresty = 0.1",
+    "lua-resty-radixtree = 2.6.1",
+    "lua-protobuf = 0.3.1",
+    "lua-resty-openidc = 1.7.2-1",
+    "luafilesystem = 1.7.0-2",
+    "lua-tinyyaml = 1.0",
+    "nginx-lua-prometheus = 0.20201218",
+    "jsonschema = 0.9.3",
+    "lua-resty-ipmatcher = 0.6",
+    "lua-resty-kafka = 0.07",
+    "lua-resty-logger-socket = 2.0-0",
+    "skywalking-nginx-lua = 0.3-0",
+    "base64 = 1.5-2",
+    "binaryheap = 0.4",
+    "dkjson = 2.5-2",
+    "resty-redis-cluster = 1.02-4",
+    "lua-resty-expr = 1.1.0",
+    "graphql = 0.0.2",
+    "argparse = 0.7.1-1",
+    "luasocket = 3.0rc1-2",
+    "luasec = 0.9-1",
+}
+
+build = {
+    type = "make",
+    build_variables = {
+        CFLAGS="$(CFLAGS)",
+        LIBFLAG="$(LIBFLAG)",
+        LUA_LIBDIR="$(LUA_LIBDIR)",
+        LUA_BINDIR="$(LUA_BINDIR)",
+        LUA_INCDIR="$(LUA_INCDIR)",
+        LUA="$(LUA)",
+    },
+    install_variables = {
+        INST_PREFIX="$(PREFIX)",
+        INST_BINDIR="$(BINDIR)",
+        INST_LIBDIR="$(LIBDIR)",
+        INST_LUADIR="$(LUADIR)",
+        INST_CONFDIR="$(CONFDIR)",
+    },
+}