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/07/23 04:10:07 UTC

[apisix] branch release/2.8 created (now 580d0f6)

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

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


      at 580d0f6  feat: release 2.8

This branch includes the following new commits:

     new 580d0f6  feat: release 2.8

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.8

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

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

commit 580d0f6148bb0a8ed12ed46d27402b1e848bd2f2
Author: spacewander <sp...@gmail.com>
AuthorDate: Fri Jul 23 12:09:18 2021 +0800

    feat: release 2.8
    
    Signed-off-by: spacewander <sp...@gmail.com>
---
 CHANGELOG.md                   | 34 ++++++++++++++++
 apisix/core/version.lua        |  2 +-
 docs/ar/README.md              |  8 ++--
 docs/en/latest/config.json     |  2 +-
 docs/en/latest/how-to-build.md | 14 +++----
 docs/es/latest/README.md       |  8 ++--
 docs/es/latest/config.json     |  2 +-
 docs/zh/latest/CHANGELOG.md    | 36 +++++++++++++++++
 docs/zh/latest/config.json     |  2 +-
 docs/zh/latest/how-to-build.md | 14 +++----
 rockspec/apisix-2.8-0.rockspec | 91 ++++++++++++++++++++++++++++++++++++++++++
 11 files changed, 187 insertions(+), 26 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 65acc53..43f36cc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -23,6 +23,7 @@ title: Changelog
 
 ## Table of Contents
 
+- [2.8.0](#280)
 - [2.7.0](#270)
 - [2.6.0](#260)
 - [2.5.0](#250)
@@ -43,6 +44,39 @@ title: Changelog
 - [0.7.0](#070)
 - [0.6.0](#060)
 
+## 2.8.0
+
+### Change
+
+- change: enable stream proxy only by default [#4580](https://github.com/apache/apisix/pull/4580)
+
+### Core
+
+- :sunrise: feat: allow user-defined balancer with metadata in node [#4605](https://github.com/apache/apisix/pull/4605)
+- :sunrise: feat: Add option retry_timeout that like nginx's proxy_next_upstream_timeout [#4574](https://github.com/apache/apisix/pull/4574)
+- :sunrise: feat: enable balancer phase for plugins [#4549](https://github.com/apache/apisix/pull/4549)
+- :sunrise: feat: allow setting separate keepalive pool [#4506](https://github.com/apache/apisix/pull/4506)
+- :sunrise: feat: enable etcd health-check [#4191](https://github.com/apache/apisix/pull/4191)
+
+### Plugin
+
+- :sunrise: feat: add gzip plugin [#4640](https://github.com/apache/apisix/pull/4640)
+- :sunrise: feat(plugin): Add new plugin ua-restriction for bot spider restriction [#4587](https://github.com/apache/apisix/pull/4587)
+- :sunrise: feat(stream): add ip-restriction [#4602](https://github.com/apache/apisix/pull/4602)
+- :sunrise: feat(stream): add limit-conn [#4515](https://github.com/apache/apisix/pull/4515)
+- :sunrise: feat: increase ext-plugin timeout to 60s [#4557](https://github.com/apache/apisix/pull/4557)
+- :sunrise: feat(key-auth): supporting key-auth plugin to get key from query string [#4490](https://github.com/apache/apisix/pull/4490)
+- :sunrise: feat(kafka-logger): support for specified the log formats via admin API. [#4483](https://github.com/apache/apisix/pull/4483)
+
+### Bugfix
+
+- fix(stream): sni router is broken when session reuses [#4607](https://github.com/apache/apisix/pull/4607)
+- fix: the limit-conn plugin cannot effectively intercept requests in special scenarios [#4585](https://github.com/apache/apisix/pull/4585)
+- fix: ref check while deleting proto via Admin API [#4575](https://github.com/apache/apisix/pull/4575)
+- fix(skywalking): handle conflict between global rule and route [#4589](https://github.com/apache/apisix/pull/4589)
+- fix: `ctx.var.cookie_*` cookie not found log [#4564](https://github.com/apache/apisix/pull/4564)
+- fix(request-id): we can use different ids with the same request [#4479](https://github.com/apache/apisix/pull/4479)
+
 ## 2.7.0
 
 ### Change
diff --git a/apisix/core/version.lua b/apisix/core/version.lua
index 6db966e..733c7a6 100644
--- a/apisix/core/version.lua
+++ b/apisix/core/version.lua
@@ -15,5 +15,5 @@
 -- limitations under the License.
 --
 return {
-    VERSION = "2.7"
+    VERSION = "2.8"
 }
diff --git a/docs/ar/README.md b/docs/ar/README.md
index 3b914f8..ffd49a3 100644
--- a/docs/ar/README.md
+++ b/docs/ar/README.md
@@ -158,9 +158,9 @@ CentOS 7, Ubuntu 16.04, Ubuntu 18.04, Debian 9, Debian 10, macOS, **ARM64** Ubun
    - قم بتنزيل أحدث حزمة إصدار لشفرة المصدر:
 
      ```shell
-     $ mkdir apisix-2.7
-     $ wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz
-     $ tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7
+     $ mkdir apisix-2.8
+     $ wget https://downloads.apache.org/apisix/2.8/apache-apisix-2.8-src.tgz
+     $ tar zxvf apache-apisix-2.8-src.tgz -C apisix-2.8
      ```
 
    - تثبيت التبعيات :
@@ -197,7 +197,7 @@ CentOS 7, Ubuntu 16.04, Ubuntu 18.04, Debian 9, Debian 10, macOS, **ARM64** Ubun
    - تثبيت أبيسكس:
 
    ```shell
-   $ sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisix-2.7-0.x86_64.rpm
+   $ sudo yum install -y https://github.com/apache/apisix/releases/download/2.8/apisix-2.8-0.x86_64.rpm
    ```
 
    - تحقق من إصدار أبيسكس:
diff --git a/docs/en/latest/config.json b/docs/en/latest/config.json
index 5a26112..40ac11d 100644
--- a/docs/en/latest/config.json
+++ b/docs/en/latest/config.json
@@ -1,5 +1,5 @@
 {
-  "version": 2.7,
+  "version": 2.8,
   "sidebar": [
     {
       "type": "category",
diff --git a/docs/en/latest/how-to-build.md b/docs/en/latest/how-to-build.md
index 4f0314e..527baee 100644
--- a/docs/en/latest/how-to-build.md
+++ b/docs/en/latest/how-to-build.md
@@ -36,7 +36,7 @@ You can install Apache APISIX via RPM package, Docker, Helm Chart, and source re
 This installation method is suitable for CentOS 7, please run the following command to install Apache APISIX.
 
 ```shell
-sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisix-2.7-0.x86_64.rpm
+sudo yum install -y https://github.com/apache/apisix/releases/download/2.8/apisix-2.8-0.x86_64.rpm
 ```
 
 ### Installation via Docker
@@ -49,16 +49,16 @@ Please refer to: [Installing Apache APISIX with Helm Chart](https://github.com/a
 
 ### Installation via Source Release Package
 
-1. Create a directory named `apisix-2.7`.
+1. Create a directory named `apisix-2.8`.
 
   ```shell
-  mkdir apisix-2.7
+  mkdir apisix-2.8
   ```
 
 2. Download Apache APISIX Release source package.
 
   ```shell
-  wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz
+  wget https://downloads.apache.org/apisix/2.8/apache-apisix-2.8-src.tgz
   ```
 
   You can also download the Apache APISIX Release source package from the Apache APISIX website. The [Apache APISIX Official Website - Download Page](https://apisix.apache.org/downloads/) also provides source packages for Apache APISIX, APISIX Dashboard and APISIX Ingress Controller.
@@ -66,14 +66,14 @@ Please refer to: [Installing Apache APISIX with Helm Chart](https://github.com/a
 3. Unzip the Apache APISIX Release source package.
 
   ```shell
-  tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7
+  tar zxvf apache-apisix-2.8-src.tgz -C apisix-2.8
   ```
 
 4. Install the runtime dependent Lua libraries.
 
   ```shell
-  # Switch to the apisix-2.7 directory
-  cd apisix-2.7
+  # Switch to the apisix-2.8 directory
+  cd apisix-2.8
   # Create dependencies
   make deps
   ```
diff --git a/docs/es/latest/README.md b/docs/es/latest/README.md
index 9330249..f820a00 100644
--- a/docs/es/latest/README.md
+++ b/docs/es/latest/README.md
@@ -155,9 +155,9 @@ Hay varias maneras de instalar la versión publicada Apache de APISIX:
    - Bajar el paquete de publicación más reciente de código fuente:
 
      ```shell
-     $ mkdir apisix-2.7
-     $ wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz
-     $ tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7
+     $ mkdir apisix-2.8
+     $ wget https://downloads.apache.org/apisix/2.8/apache-apisix-2.8-src.tgz
+     $ tar zxvf apache-apisix-2.8-src.tgz -C apisix-2.8
      ```
 
    - Instalar las dependencias:
@@ -194,7 +194,7 @@ Hay varias maneras de instalar la versión publicada Apache de APISIX:
    - Instalar APISIX:
 
    ```shell
-   $ sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisix-2.7-0.x86_64.rpm
+   $ sudo yum install -y https://github.com/apache/apisix/releases/download/2.8/apisix-2.8-0.x86_64.rpm
    ```
 
    - Chequear versión de APISIX:
diff --git a/docs/es/latest/config.json b/docs/es/latest/config.json
index 223338a..a5d1916 100644
--- a/docs/es/latest/config.json
+++ b/docs/es/latest/config.json
@@ -1,4 +1,4 @@
 {
-  "version": 2.7,
+  "version": 2.8,
   "sidebar": []
 }
diff --git a/docs/zh/latest/CHANGELOG.md b/docs/zh/latest/CHANGELOG.md
index 173d1d5..c221467 100644
--- a/docs/zh/latest/CHANGELOG.md
+++ b/docs/zh/latest/CHANGELOG.md
@@ -23,6 +23,7 @@ title: CHANGELOG
 
 ## Table of Contents
 
+- [2.8.0](#280)
 - [2.7.0](#270)
 - [2.6.0](#260)
 - [2.5.0](#250)
@@ -43,8 +44,43 @@ title: CHANGELOG
 - [0.7.0](#070)
 - [0.6.0](#060)
 
+## 2.8.0
+
+### Change
+
+- 如果启用 stream proxy,默认将不再一并启用 HTTP proxy 功能 [#4580](https://github.com/apache/apisix/pull/4580)
+
+### Core
+
+- :sunrise: 允许用户自定义 balancer [#4605](https://github.com/apache/apisix/pull/4605)
+- :sunrise: upstream 中添加 retry_timeout,类似于 Nginx 的 proxy_next_upstream_timeout [#4574](https://github.com/apache/apisix/pull/4574)
+- :sunrise: 允许在 balancer_by_lua 中运行插件 [#4549](https://github.com/apache/apisix/pull/4549)
+- :sunrise: 允许给 upstream 指定单独的连接池 [#4506](https://github.com/apache/apisix/pull/4506)
+- :sunrise: etcd 连接开启健康检查 [#4191](https://github.com/apache/apisix/pull/4191)
+
+### Plugin
+
+- :sunrise: 增加 gzip 插件 [#4640](https://github.com/apache/apisix/pull/4640)
+- :sunrise: 增加 ua-restriction 插件来拒绝爬虫请求 [#4587](https://github.com/apache/apisix/pull/4587)
+- :sunrise: stream 模块增加 ip-restriction 插件 [#4602](https://github.com/apache/apisix/pull/4602)
+- :sunrise: stream 模块增加 limit-conn 插件 [#4515](https://github.com/apache/apisix/pull/4515)
+- :sunrise: 将 ext-plugin 的超时提升到 60s [#4557](https://github.com/apache/apisix/pull/4557)
+- :sunrise: key-auth 支持从 query string 中获取 key [#4490](https://github.com/apache/apisix/pull/4490)
+- :sunrise: kafka-logger 支持通过 admin API 设置日志格式 [#4483](https://github.com/apache/apisix/pull/4483)
+
+### Bugfix
+
+- 修复 stream proxy 的 SNI router 在 session 复用中不可用的问题 [#4607](https://github.com/apache/apisix/pull/4607)
+- 修复 limit-conn 同时在全局和 route 中指定会出错的问题 [#4585](https://github.com/apache/apisix/pull/4585)
+- 修复 Admin API 中检查 proto 引用关系的错误 [#4575](https://github.com/apache/apisix/pull/4575)
+- 修复 skywalking 同时在全局和 route 中指定会出错的问题 [#4589](https://github.com/apache/apisix/pull/4589)
+- 调用 `ctx.var.cookie_*` 时如果没有找到 cookie 不再报错 [#4564](https://github.com/apache/apisix/pull/4564)
+- 修复 request-id 同时在全局和 route 中指定会出错的问题 [#4479](https://github.com/apache/apisix/pull/4479)
+
 ## 2.7.0
 
+### Change
+
 - 修改 metadata_schema 校验方式,让它跟其他 schema 一致 [#4381](https://github.com/apache/apisix/pull/4381)
 - 移除 echo 插件的 auth_value 字段 [#4055](https://github.com/apache/apisix/pull/4055)
 - 更正 Admin API count 字段的计算,并把它的类型变成 integer [#4385](https://github.com/apache/apisix/pull/4385)
diff --git a/docs/zh/latest/config.json b/docs/zh/latest/config.json
index 5247778..5ce67a1 100644
--- a/docs/zh/latest/config.json
+++ b/docs/zh/latest/config.json
@@ -1,5 +1,5 @@
 {
-  "version": 2.7,
+  "version": 2.8,
   "sidebar": [
     {
       "type": "category",
diff --git a/docs/zh/latest/how-to-build.md b/docs/zh/latest/how-to-build.md
index d7b938a..f599942 100644
--- a/docs/zh/latest/how-to-build.md
+++ b/docs/zh/latest/how-to-build.md
@@ -36,7 +36,7 @@ Apache APISIX 的运行环境需要依赖 NGINX 和 etcd,所以在安装 Apach
 这种安装方式适用于 CentOS 7 操作系统,请运行以下命令安装 Apache APISIX。
 
 ```shell
-sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisix-2.7-0.x86_64.rpm
+sudo yum install -y https://github.com/apache/apisix/releases/download/2.8/apisix-2.8-0.x86_64.rpm
 ```
 
 ### 通过 Docker 安装
@@ -49,16 +49,16 @@ sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisi
 
 ### 通过源码包安装
 
-1. 创建一个名为 `apisix-2.7` 的目录。
+1. 创建一个名为 `apisix-2.8` 的目录。
 
   ```shell
-  mkdir apisix-2.7
+  mkdir apisix-2.8
   ```
 
 2. 下载 Apache APISIX Release 源码包:
 
   ```shell
-  wget https://downloads.apache.org/apisix/2.7/apache-apisix-2.7-src.tgz
+  wget https://downloads.apache.org/apisix/2.8/apache-apisix-2.8-src.tgz
   ```
 
   您也可以通过 Apache APISIX 官网下载 Apache APISIX Release 源码包。 Apache APISIX 官网也提供了 Apache APISIX、APISIX Dashboard 和 APISIX Ingress Controller 的源码包,详情请参考[Apache APISIX 官网-下载页](https://apisix.apache.org/zh/downloads)。
@@ -66,14 +66,14 @@ sudo yum install -y https://github.com/apache/apisix/releases/download/2.7/apisi
 3. 解压 Apache APISIX Release 源码包:
 
   ```shell
-  tar zxvf apache-apisix-2.7-src.tgz -C apisix-2.7
+  tar zxvf apache-apisix-2.8-src.tgz -C apisix-2.8
   ```
 
 4. 安装运行时依赖的 Lua 库:
 
   ```shell
-  # 切换到 apisix-2.7 目录
-  cd apisix-2.7
+  # 切换到 apisix-2.8 目录
+  cd apisix-2.8
   # 创建依赖
   make deps
   ```
diff --git a/rockspec/apisix-2.8-0.rockspec b/rockspec/apisix-2.8-0.rockspec
new file mode 100644
index 0000000..d323e60
--- /dev/null
+++ b/rockspec/apisix-2.8-0.rockspec
@@ -0,0 +1,91 @@
+--
+-- 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.8-0"
+supported_platforms = {"linux", "macosx"}
+
+source = {
+    url = "git://github.com/apache/apisix",
+    branch = "2.8",
+}
+
+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-dns-client = 5.2.0",
+    "lua-resty-template = 2.0",
+    "lua-resty-etcd = 1.5.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.8.1",
+    "lua-protobuf = 0.3.2",
+    "lua-resty-openidc = 1.7.2-1",
+    "luafilesystem = 1.7.0-2",
+    "api7-lua-tinyyaml = 0.3.0",
+    "nginx-lua-prometheus = 0.20210206",
+    "jsonschema = 0.9.5",
+    "lua-resty-ipmatcher = 0.6",
+    "lua-resty-kafka = 0.07",
+    "lua-resty-logger-socket = 2.0-0",
+    "skywalking-nginx-lua = 0.4-1",
+    "base64 = 1.5-2",
+    "binaryheap = 0.4",
+    "dkjson = 2.5-2",
+    "resty-redis-cluster = 1.02-4",
+    "lua-resty-expr = 1.3.0",
+    "graphql = 0.0.2",
+    "argparse = 0.7.1-1",
+    "luasocket = 3.0rc1-2",
+    "luasec = 0.9-1",
+    "lua-resty-consul = 0.3-2",
+    "penlight = 1.9.2-1",
+    "ext-plugin-proto = 0.1.1",
+}
+
+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 = {
+        INST_PREFIX="$(PREFIX)",
+        INST_BINDIR="$(BINDIR)",
+        INST_LIBDIR="$(LIBDIR)",
+        INST_LUADIR="$(LUADIR)",
+        INST_CONFDIR="$(CONFDIR)",
+    },
+}