Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ github:
dismiss_stale_reviews: true
require_code_owner_reviews: true
required_approving_review_count: 3
release/3.12:
required_pull_request_reviews:
require_code_owner_reviews: true
required_approving_review_count: 3
release/3.11:
required_pull_request_reviews:
require_code_owner_reviews: true
Expand Down
63 changes: 63 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

- [3.12.0](#3120)
- [3.11.0](#3110)
- [3.10.0](#3100)
- [3.9.0](#390)
Expand Down Expand Up @@ -78,6 +79,68 @@ title: Changelog
- [0.7.0](#070)
- [0.6.0](#060)

## 3.12.0

### Change

- replace plugin attribute with plugin metadata in `opentelemetry` plugin [#11940](https://github.com/apache/apisix/pull/11940)
- add expiration time for all Prometheus metrics [#11838](https://github.com/apache/apisix/pull/11838)
- allow workflow config without case [#11787](https://github.com/apache/apisix/pull/11787)
- refactor: ai-content-moderation to ai-aws-content-moderation (#12010)
- rectify business logic/code in ai-proxy [#12055](https://github.com/apache/apisix/pull/12055)

### Bugfixes

- Fix: resync etcd when a lower revision is found [#12015](https://github.com/apache/apisix/pull/12015)
- Fix: remove model options' `stream` default value [#12013](https://github.com/apache/apisix/pull/12013)
- Fix: grpc-web response contains two trailer chunks [#11988](https://github.com/apache/apisix/pull/11988)
- Fix: event_id is nil in chaitin-waf [#11651](https://github.com/apache/apisix/pull/11651)
- Fix: race condition problem while update upstream.nodes [#11916](https://github.com/apache/apisix/pull/11916)
- Fix: `upstream_obj.upstream` should not be a string [#11932](https://github.com/apache/apisix/pull/11932)
- Fix: query params in override.endpoint not being sent to LLMs [#11863](https://github.com/apache/apisix/pull/11863)
- Fix: corrupt data in routes() response due to healthchecker data [#11844](https://github.com/apache/apisix/pull/11844)
- Fix: deepcopy should copy same table exactly only once [#11861](https://github.com/apache/apisix/pull/11861)
- Fix: disallow empty key configuration attributes [#11852](https://github.com/apache/apisix/pull/11852)
- Fix: etcd watch restart when receive invalid revision [#11833](https://github.com/apache/apisix/pull/11833)
- Fix: missing parsed_url nil check [#11637](https://github.com/apache/apisix/pull/11637)
- Fix: use `plugin.get` to fetch plugin configured in multi-auth plugin [#11794](https://github.com/apache/apisix/pull/11794)
- Fix: allow special characters in uri params [#11788](https://github.com/apache/apisix/pull/11788)
- Fix: add nil check to conf in body-transformer [#11768](https://github.com/apache/apisix/pull/11768)
- Fix: use max_req_body_bytes field in custom_format [#11771](https://github.com/apache/apisix/pull/11771)
- Fix: health checker can't be released due to health parent being released early [#11760](https://github.com/apache/apisix/pull/11760)
- Fix: use right modifiedIndex for consumer when use credential [#11649](https://github.com/apache/apisix/pull/11649)

### Core

- upgrade openresty version to v1.27.11 [#11936](https://github.com/apache/apisix/pull/11936)
- Support the use of system-provided CA certs in `ssl_trusted_certificate` [#11809](https://github.com/apache/apisix/pull/11809)
- support _meta.pre_function to execute custom logic before execution of each phase [#11793](https://github.com/apache/apisix/pull/11793)
- support anonymous consumer [#11917](https://github.com/apache/apisix/pull/11917)
- accelerate the creation of the consumer cache [#11840](https://github.com/apache/apisix/pull/11840)
- replace 'string.find' with 'core.string.find' [#11886](https://github.com/apache/apisix/pull/11886)
- workflow plugin registration [#11832](https://github.com/apache/apisix/pull/11832)

### Plugins

- refactor ai-proxy and ai-proxy-multi [#12030](https://github.com/apache/apisix/pull/12030)
- support embeddings API [#12062](https://github.com/apache/apisix/pull/12062)
- implement rate limiting based fallback strategy [#12047](https://github.com/apache/apisix/pull/12047)
- ai-rate-limiting plugin [#12037](https://github.com/apache/apisix/pull/12037)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add xxx plugin

- add `valid_issuers` field in `openid-connect` plugin [#12002](https://github.com/apache/apisix/pull/12002)
- add ai-prompt-guard plugin [#12008](https://github.com/apache/apisix/pull/12008)
- add jwt audience validator [#11987](https://github.com/apache/apisix/pull/11987)
- store JWT in the request context [#11675](https://github.com/apache/apisix/pull/11675)
- support proxying openai compatible LLMs [#12004](https://github.com/apache/apisix/pull/12004)
- add `ai-proxy-multi` plugin [#11986](https://github.com/apache/apisix/pull/11986) [#12030](https://github.com/apache/apisix/pull/12030)
- make rate limiting response header names configurable [#11831](https://github.com/apache/apisix/pull/11831)
- support mulipart content-type in `body-transformer` [#11767](https://github.com/apache/apisix/pull/11767)
- plugins in multi-auth returns error instead of logging it [#11775](https://github.com/apache/apisix/pull/11775)
- support configuring `key_claim_name` [#11772](https://github.com/apache/apisix/pull/11772)
- add Total request per second panel in grafana dashboard [#11692](https://github.com/apache/apisix/pull/11692)
- add ai-rag plugin [#11568](https://github.com/apache/apisix/pull/11568)
- add ai-content-moderation plugin [#11541](https://github.com/apache/apisix/pull/11541)
- use setmetatable to set hidden variables without effecting serialisation [#11770](https://github.com/apache/apisix/pull/11770)

## 3.11.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 @@ -20,5 +20,5 @@
-- @module core.version

return {
VERSION = "3.11.0"
VERSION = "3.12.0"
}
2 changes: 1 addition & 1 deletion docs/en/latest/building-apisix.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ To build and package APISIX for a specific platform, see [apisix-build-tools](ht
First of all, we need to specify the version `APISIX_VERSION` to be installed:

```shell
APISIX_VERSION='3.11.0'
APISIX_VERSION='3.12.0'
```

Then, you can run the following command to clone the APISIX source code from Github:
Expand Down
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": "3.11.0",
"version": "3.12.0",
"sidebar": [
{
"type": "category",
Expand Down
2 changes: 1 addition & 1 deletion docs/zh/latest/building-apisix.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ import TabItem from '@theme/TabItem';
首先,我们需要指定需要安装的版本`APISIX_VERSION`:

```shell
APISIX_VERSION='3.11.0'
APISIX_VERSION='3.12.0'
```

然后,你可以运行以下命令,从 Github 克隆 APISIX 源码:
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": "3.11.0",
"version": "3.12.0",
"sidebar": [
{
"type": "category",
Expand Down
Loading