This is an automated email from the ASF dual-hosted git repository.
shreemaan-abhishek pushed a change to branch release/3.17
in repository https://gitbox.apache.org/repos/asf/apisix.git
omit 5e339a15a chore: release 3.17.0
add 418a8c697 feat(prometheus): add built-in LLM histograms for TTFT and
token distribution (#13487)
add bf9091acd feat(ai-proxy): add built-in nginx variables for LLM
observability (#13477)
add 9d3c66d24 fix(upstream): use `cert` and `key` instead of stale `ok` in
mTLS error checks (#13442)
add 993ca77d7 fix(authz-casdoor): expire the session when the Casdoor
token expires (#13500)
add f27d6f900 fix(request-id): generate nanoid with CSPRNG to avoid
duplicate and malformed ids (#13508)
add 9995d4c81 test(xrpc): fix first-run failures in redis.t and
prometheus.t (#13507)
add 5270be15e fix(ai-proxy-multi): refresh cached server picker once
health checkers are created (#13505)
add cb72d0eb6 fix(ai-proxy-multi): keep existing query string in health
check path; cover construct_upstream mutation contract (#13506)
add 6d7aae70a chore: release 3.17.0
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (5e339a15a)
\
N -- N -- N refs/heads/release/3.17 (6d7aae70a)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
CHANGELOG.md | 7 +
apisix-master-0.rockspec | 1 -
apisix/cli/ngx_tpl.lua | 8 +
apisix/core/ctx.lua | 8 +
apisix/plugins/ai-protocols/anthropic-messages.lua | 41 ++++
apisix/plugins/ai-protocols/openai-chat.lua | 68 ++++++-
apisix/plugins/ai-protocols/openai-responses.lua | 69 +++++--
apisix/plugins/ai-providers/base.lua | 26 +++
apisix/plugins/ai-proxy-multi.lua | 32 +--
apisix/plugins/ai-proxy/base.lua | 33 +++-
apisix/plugins/authz-casdoor.lua | 17 +-
apisix/plugins/prometheus/exporter.lua | 65 +++++-
apisix/plugins/request-id.lua | 24 ++-
apisix/upstream.lua | 4 +-
conf/config.yaml.example | 8 +
docs/en/latest/plugins/prometheus.md | 32 +++
docs/zh/latest/plugins/prometheus.md | 32 +++
t/APISIX.pm | 10 +-
.../messages-streaming-with-tool-use.sse} | 10 +-
t/fixtures/openai/chat-streaming-with-cache.sse | 6 +
.../openai/chat-streaming-with-tool-calls.sse | 7 +
.../openai/responses-streaming-with-cache.sse | 6 +
.../openai/responses-streaming-with-tool-call.sse | 3 +
t/fixtures/openai/responses-with-cache.json | 22 +++
t/node/upstream-mtls.t | 100 ++++++++++
t/plugin/ai-proxy-anthropic.t | 89 +++++++++
t/plugin/ai-proxy-multi-construct-upstream.t | 166 ++++++++++++++++
t/plugin/ai-proxy-multi-healthcheck-stale-picker.t | 211 ++++++++++++++++++++
t/plugin/ai-proxy3.t | 219 +++++++++++++++++++--
t/plugin/authz-casdoor.t | 108 ++++++++++
t/plugin/prometheus-ai-proxy.t | 163 +++++++++++++++
t/plugin/request-id.t | 66 +++++++
t/xrpc/prometheus.t | 9 +
t/xrpc/redis.t | 7 +-
34 files changed, 1610 insertions(+), 67 deletions(-)
copy t/fixtures/{protocol-conversion/anthropic-mismatch.sse =>
anthropic/messages-streaming-with-tool-use.sse} (50%)
create mode 100644 t/fixtures/openai/chat-streaming-with-cache.sse
create mode 100644 t/fixtures/openai/chat-streaming-with-tool-calls.sse
create mode 100644 t/fixtures/openai/responses-streaming-with-cache.sse
create mode 100644 t/fixtures/openai/responses-streaming-with-tool-call.sse
create mode 100644 t/fixtures/openai/responses-with-cache.json
create mode 100644 t/plugin/ai-proxy-multi-construct-upstream.t
create mode 100644 t/plugin/ai-proxy-multi-healthcheck-stale-picker.t