Skip to content

Commit

Permalink
feat: release 2.10.0 (#5129)
Browse files Browse the repository at this point in the history
  • Loading branch information
spacewander authored Sep 28, 2021
1 parent 76540a5 commit bc6ddf5
Show file tree
Hide file tree
Showing 10 changed files with 198 additions and 17 deletions.
4 changes: 4 additions & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,10 @@ github:
required_pull_request_reviews:
require_code_owner_reviews: true
required_approving_review_count: 2
release/2.10.0:
required_pull_request_reviews:
require_code_owner_reviews: true
required_approving_review_count: 2
release/2.9:
required_pull_request_reviews:
require_code_owner_reviews: true
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ luac.out
# develop
*.log
*.pid
*.orig
*.rej
t/servroot
conf/apisix.uid
conf/nginx.conf
Expand Down
40 changes: 40 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ title: Changelog

## Table of Contents

- [2.10.0](#2100)
- [2.9.0](#290)
- [2.8.0](#280)
- [2.7.0](#270)
Expand All @@ -45,6 +46,45 @@ title: Changelog
- [0.7.0](#070)
- [0.6.0](#060)

## 2.10.0

### Change

- change(debug): move 'enable_debug' form config.yaml to debug.yaml [#5046](https://github.com/apache/apisix/pull/5046)
- change: use a new name to customize lua_shared_dict in nginx.conf [#5030](https://github.com/apache/apisix/pull/5030)
- change: drop the support of shell script installation [#4985](https://github.com/apache/apisix/pull/4985)

### Core

- :sunrise: feat(debug-mode): add dynamic debug mode [#5012](https://github.com/apache/apisix/pull/5012)
- :sunrise: feat: allow injecting logic to APISIX's method [#5068](https://github.com/apache/apisix/pull/5068)
- :sunrise: feat: allow configuring fallback SNI [#5000](https://github.com/apache/apisix/pull/5000)
- :sunrise: feat(stream_route): support CIDR in ip match [#4980](https://github.com/apache/apisix/pull/4980)
- :sunrise: feat: allow route to inherit hosts from service [#4977](https://github.com/apache/apisix/pull/4977)
- :sunrise: feat: support configurating the node listening address[#4856](https://github.com/apache/apisix/pull/4856)

### Plugin

- :sunrise: feat(hmac-auth): Add validate request body for hmac auth plugin [#5038](https://github.com/apache/apisix/pull/5038)
- :sunrise: feat(proxy-mirror): support mirror requests sample_ratio [#4965](https://github.com/apache/apisix/pull/4965)
- :sunrise: feat(referer-restriction): add blacklist and message [#4916](https://github.com/apache/apisix/pull/4916)
- :sunrise: feat(kafka-logger): add cluster name support [#4876](https://github.com/apache/apisix/pull/4876)
- :sunrise: feat(kafka-logger): add required_acks option [#4878](https://github.com/apache/apisix/pull/4878)
- :sunrise: feat(uri-blocker): add case insensitive switch [#4868](https://github.com/apache/apisix/pull/4868)

### Bugfix

- fix(radixtree_host_uri): correct matched host [#5124](https://github.com/apache/apisix/pull/5124)
- fix(radixtree_host_uri): correct matched path [#5104](https://github.com/apache/apisix/pull/5104)
- fix(nacos): distinguish services that has same name but in different groups or namespaces [#5083](https://github.com/apache/apisix/pull/5083)
- fix(nacos): continue to process other services when request failed [#5112](https://github.com/apache/apisix/pull/5112)
- fix(ssl): match sni in case-insensitive way [#5074](https://github.com/apache/apisix/pull/5074)
- fix(upstream): should not override default keepalive value [#5054](https://github.com/apache/apisix/pull/5054)
- fix(DNS): prefer SRV in service discovery [#4992](https://github.com/apache/apisix/pull/4992)
- fix(consul): retry connecting after a delay [#4979](https://github.com/apache/apisix/pull/4979)
- fix: avoid copying unwanted data when the domain's IP changed [#4952](https://github.com/apache/apisix/pull/4952)
- fix(plugin_config): recover plugin when plugin_config changed [#4888](https://github.com/apache/apisix/pull/4888)

## 2.9.0

### Change
Expand Down
2 changes: 1 addition & 1 deletion apisix/core/version.lua
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@
-- limitations under the License.
--
return {
VERSION = "2.9"
VERSION = "2.10.0"
}
2 changes: 1 addition & 1 deletion docs/en/latest/config.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"version": 2.9,
"version": "2.10.0",
"sidebar": [
{
"type": "category",
Expand Down
14 changes: 7 additions & 7 deletions docs/en/latest/how-to-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.9/apisix-2.9-0.el7.x86_64.rpm
sudo yum install -y https://github.com/apache/apisix/releases/download/2.10.0/apisix-2.10.0-0.el7.x86_64.rpm
```

### Installation via Docker
Expand All @@ -49,31 +49,31 @@ 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.9`.
1. Create a directory named `apisix-2.10.0`.

```shell
mkdir apisix-2.9
mkdir apisix-2.10.0
```

2. Download Apache APISIX Release source package.

```shell
wget https://downloads.apache.org/apisix/2.9/apache-apisix-2.9-src.tgz
wget https://downloads.apache.org/apisix/2.10.0/apache-apisix-2.10.0-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.

3. Unzip the Apache APISIX Release source package.

```shell
tar zxvf apache-apisix-2.9-src.tgz -C apisix-2.9
tar zxvf apache-apisix-2.10.0-src.tgz -C apisix-2.10.0
```

4. Install the runtime dependent Lua libraries.

```shell
# Switch to the apisix-2.9 directory
cd apisix-2.9
# Switch to the apisix-2.10.0 directory
cd apisix-2.10.0
# Create dependencies
make deps
```
Expand Down
40 changes: 40 additions & 0 deletions docs/zh/latest/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ title: CHANGELOG

## Table of Contents

- [2.10.0](#2100)
- [2.9.0](#290)
- [2.8.0](#280)
- [2.7.0](#270)
Expand All @@ -45,6 +46,45 @@ title: CHANGELOG
- [0.7.0](#070)
- [0.6.0](#060)

## 2.10.0

### Change

- 将 enable_debug 配置从 config.yaml 移到 debug.yaml [#5046](https://github.com/apache/apisix/pull/5046)
- 更改自定义 lua_shared_dict 配置的名称 [#5030](https://github.com/apache/apisix/pull/5030)
- 不再提供 APISIX 安装 shell 脚本 [#4985](https://github.com/apache/apisix/pull/4985)

### Core

- :sunrise: debug-mode 支持动态请求过滤 [#5012](https://github.com/apache/apisix/pull/5012)
- :sunrise: 支持注入逻辑到 APISIX 方法中 [#5068](https://github.com/apache/apisix/pull/5068)
- :sunrise: 支持配置 fallback SNI [#5000](https://github.com/apache/apisix/pull/5000)
- :sunrise: stream_route 支持在 IP 匹配中使用 CIDR [#4980](https://github.com/apache/apisix/pull/4980)
- :sunrise: 支持 route 从 service 中继承 hosts [#4977](https://github.com/apache/apisix/pull/4977)
- :sunrise: 改善数据面监听地址的配置 [#4856](https://github.com/apache/apisix/pull/4856)

### Plugin

- :sunrise: hmac-auth 支持校验请求体 [#5038](https://github.com/apache/apisix/pull/5038)
- :sunrise: proxy-mirror 支持控制镜像流量的比例 [#4965](https://github.com/apache/apisix/pull/4965)
- :sunrise: referer-restriction 增加黑名单和自定义信息 [#4916](https://github.com/apache/apisix/pull/4916)
- :sunrise: kafka-logger 增加 cluster 支持 [#4876](https://github.com/apache/apisix/pull/4876)
- :sunrise: kafka-logger 增加 required_acks 选项 [#4878](https://github.com/apache/apisix/pull/4878)
- :sunrise: uri-blocker 支持大小写无关的匹配 [#4868](https://github.com/apache/apisix/pull/4868)

### Bugfix

- radixtree_host_uri 路由更正匹配结果的 host [#5124](https://github.com/apache/apisix/pull/5124)
- radixtree_host_uri 路由更正匹配结果的 path [#5104](https://github.com/apache/apisix/pull/5104)
- Nacos 服务发现,区分处于不同 group/namespace 的同名 service [#5083](https://github.com/apache/apisix/pull/5083)
- Nacos 服务发现,当一个服务的地址获取失败后,继续处理剩下的服务 [#5112](https://github.com/apache/apisix/pull/5112)
- 匹配 SNI 时需要大小写无关 [#5074](https://github.com/apache/apisix/pull/5074)
- upstream 的 keepalive_pool 配置,缺省时不应覆盖默认的 keepalive 配置 [#5054](https://github.com/apache/apisix/pull/5054)
- DNS 服务发现,优先查询 SRV 记录 [#4992](https://github.com/apache/apisix/pull/4992)
- Consul 服务发现,重试前需等待一段时间 [#4979](https://github.com/apache/apisix/pull/4979)
- 当 upstream domain 背后的 IP 改变时,避免复制多余数据 [#4952](https://github.com/apache/apisix/pull/4952)
- 当 plugin_config 变化时,恢复之前被覆盖的配置 [#4888](https://github.com/apache/apisix/pull/4888)

## 2.9.0

### Change
Expand Down
2 changes: 1 addition & 1 deletion docs/zh/latest/config.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"version": 2.9,
"version": "2.10.0",
"sidebar": [
{
"type": "category",
Expand Down
14 changes: 7 additions & 7 deletions docs/zh/latest/how-to-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.9/apisix-2.9-0.el7.x86_64.rpm
sudo yum install -y https://github.com/apache/apisix/releases/download/2.10.0/apisix-2.10.0-0.el7.x86_64.rpm
```

### 通过 Docker 安装
Expand All @@ -49,31 +49,31 @@ sudo yum install -y https://github.com/apache/apisix/releases/download/2.9/apisi

### 通过源码包安装

1. 创建一个名为 `apisix-2.9` 的目录。
1. 创建一个名为 `apisix-2.10.0` 的目录。

```shell
mkdir apisix-2.9
mkdir apisix-2.10.0
```

2. 下载 Apache APISIX Release 源码包:

```shell
wget https://downloads.apache.org/apisix/2.9/apache-apisix-2.9-src.tgz
wget https://downloads.apache.org/apisix/2.10.0/apache-apisix-2.10.0-src.tgz
```

您也可以通过 Apache APISIX 官网下载 Apache APISIX Release 源码包。 Apache APISIX 官网也提供了 Apache APISIX、APISIX Dashboard 和 APISIX Ingress Controller 的源码包,详情请参考[Apache APISIX 官网-下载页](https://apisix.apache.org/zh/downloads)。

3. 解压 Apache APISIX Release 源码包:

```shell
tar zxvf apache-apisix-2.9-src.tgz -C apisix-2.9
tar zxvf apache-apisix-2.10.0-src.tgz -C apisix-2.10.0
```

4. 安装运行时依赖的 Lua 库:

```shell
# 切换到 apisix-2.9 目录
cd apisix-2.9
# 切换到 apisix-2.10.0 目录
cd apisix-2.10.0
# 创建依赖
make deps
```
Expand Down
95 changes: 95 additions & 0 deletions rockspec/apisix-2.10.0-0.rockspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
--
-- 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.10.0-0"
supported_platforms = {"linux", "macosx"}

source = {
url = "git://github.com/apache/apisix",
branch = "2.10.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",
"lua-resty-dns-client = 5.2.0",
"lua-resty-template = 2.0",
"lua-resty-etcd = 1.5.4",
"api7-lua-resty-http = 0.2.0",
"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.3",
"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.1",
"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.1",
"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.3.0",
"casbin = 1.26.0",
"api7-snowflake = 2.0-1",
"inspect == 3.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)",
},
}

0 comments on commit bc6ddf5

Please sign in to comment.