Releases: alibaba/higress
Releases · alibaba/higress
v2.1.0-rc.2
What's Changed
- fix: add match list and wasm mcp-server message pub in redis by @Jing-ze in #1963
- fix: mcp server config map by @Jing-ze in #1969
- doc: add ai statistics metric doc by @cr7258 in #1889
- feat: add azure embedding to ai-cache by @Beatrueman in #1975
- docs: Add Azure OpenAI configuration instructions by @Beatrueman in #1976
- refactor mcp sdk by @johnlanni in #1977
- Add all in one mcp by @johnlanni in #1978
- fix inclusionRegexps not working by @hzhswyz in #1972
- fix: fix bug of mcp server proxy by @Jing-ze in #1981
- fix: Fix a few issues in the envoy.yaml configuration file. by @Fengxq2014 in #1983
- fix: mcp proxy eventData by @Jing-ze in #1985
- support rest to mcp by @johnlanni in #1988
- rename redis key by @rinfx in #1986
- feat: Add an optional Redis component to the Higress helm package by @littlejiancc in #1973
- feat: support service delete event trigger for tool and some fix by @luoxiner in #1987
- use custom nacos go sdk for disable log by @luoxiner in #1991
- update proxy-wasm-cpp-host by @johnlanni in #1993
- fix: Golang filter supports skipping processing at the body stage. by @Jing-ze in #1989
- release 2.1.0 rc.2 by @johnlanni in #1995
Full Changelog: v2.1.0-rc.1...v2.1.0-rc.2
v2.1.0-rc.1
What's Changed
- update helm docs by @johnlanni in #1782
- feat: add ollama embedding to ai-cache by @Beatrueman in #1794
- feat: Support transforming reasoning_content returned by Qwen to OpenAI contract by @CH3CHO in #1791
- fix: Fix a bug in openaiCustomUrl support by @CH3CHO in #1790
- Add ai search plugin by @johnlanni in #1804
- feat: Unify the SSE processing logic by @CH3CHO in #1800
- fix(typo): use the correct bing name for ai-search. by @maratrixx in #1807
- Add database configuration for plugins that use Redis. by @johnlanni in #1814
- set include_usage by default for all model providers by @johnlanni in #1818
- ai-search support quark by @rinfx in #1811
- add notes to gateway.rollingMaxUnavailable by @littlejiancc in #1819
- feat: update ai-token-ratelimit documentation by removing ai-statistics plugin by @cr7258 in #1767
- Ai data masking msg window by @007gzs in #1775
- feat: ext-auth plugin: Blacklist and whitelist modes support HTTP request method matching by @hanxiantao in #1798
- fix: remove last failed apiToken from retry apiToken list by @cr7258 in #1802
- feat: Support pushing multi-arch images to a custom image registry by @CH3CHO in #1815
- fix rust_wasm_build by @007gzs in #1824
- fix: Disable helm-docs action since it's still under development by @CH3CHO in #1828
- fix: gateway log config should read from helm\core\values.yaml when deploy with helm by @firebook in #1834
- Simplify the implementation of ai-search integration with quark and add a tutorial. by @johnlanni in #1838
- optimize ai search by @johnlanni in #1843
- feat(helm): add podLabels to gateway && controller by @daixijun in #1792
- doc: Update the description of timeout config of ai-proxy by @CH3CHO in #1845
- add plugin start log in sdk by @rinfx in #1831
- feat: Support only watching key resources in one namespace by @CH3CHO in #1821
- Set the llm-api-key field of the ai-search plugin to optional by @johnlanni in #1846
- chore: load EXTRA_TAGS from plugin .buildrc file to avoid build issue. by @Colstuwjx in #1852
- fix plugin_wrapper.go log level by @Colstuwjx in #1848
- fix: Fix the incorrect reasoning content concat logic in ai-proxy by @CH3CHO in #1842
- optimize ai-search references by @johnlanni in #1859
- optimize model router&mapper by @johnlanni in #1866
- feat: allow failover to distinguish between different endpoint of the same provider by @cr7258 in #1862
- feat: add replay protection plugin by @yunmaoQu in #1672
- feat: add huggingface embedding to ai-cache by @Beatrueman in #1864
- add redis init status log by @rinfx in #1867
- support default value by @rinfx in #1873
- feat: support elasticsearch hybrid search by @cr7258 in #1844
- bugfix:[frontend-gray plugin] For fetch requests, force no caching by @heimanba in #1856
- feat: support retry on http status code by @cr7258 in #1817
- fix openai embedding path by @johnlanni in #1881
- Rust WASM plugin support for matching service and route name prefixes is effective. by @007gzs in #1882
- AI-search plugin supports controlling through the web_search_options parameter. by @johnlanni in #1893
- fix chunk merge bug in ai-search by @johnlanni in #1895
- more optimize of ai search plugin by @johnlanni in #1896
- add variable from secret when applying istio cr by @2456868764 in #1877
- optimize retry&failover logic by @johnlanni in #1903
- feat: Support files and batches APIs provided by Azure OpenAI by @CH3CHO in #1904
- support nil option in NewCommonVmCtx by @johnlanni in #1909
- feat: Support forwarding embedding calls to Ollama in ai-proxy by @CH3CHO in #1913
- optimization parseIP in xff by @007gzs in #1915
- fix: Skip reading non-JSON request bodies in ai-proxy by @CH3CHO in #1914
- feat: add ratelimit metrics in the ai-token-ratelimit plugin by @hzhswyz in #1918
- feat: add xfyun emb to ai-cache by @Beatrueman in #1921
- feat: add buffer_limit functions by @Fengxq2014 in #1922
- Fix the error in the embedding interface under the AI proxy Qwen compatible mode. by @rinfx in #1928
- improve the logic for constructing redis key by @rinfx in #1933
- add example for extending span attributes by @rinfx in #1936
- optimize plugin sdk by @johnlanni in #1930
- feat: add golang filter and mcp-server by @Jing-ze in #1942
- chore: Remove redundant get-higress.sh by @CH3CHO in #1943
- feat: add config parse in mcp server by @Jing-ze in #1944
- Add remote mcp server sdk by @johnlanni in #1946
- add parse_rule_config fail log by @007gzs in #1938
- fix invalid ai-proxy cluster by @johnlanni in #1947
- revert wrapper changes by @johnlanni in #1948
- fix ai-search rewrite query when no search result found by @johnlanni in #1949
- add: add mcp server amap tools by @mirror58229 in #1951
- feat: add mcpServer in config map by @Jing-ze in #1953
- feat: update Go filter mcp-server by @Jing-ze in #1950
- Fix log import by @johnlanni in #1957
- fix: Fix the incorrect image used to build envoy by @CH3CHO in #1958
- key auth support multiple credentials by @johnlanni in #1956
- rel 2.1.0-rc.1 by @johnlanni in #1959
New Contributors
- @maratrixx made their first contribution in #1807
- @firebook made their first contribution in #1834
- @Colstuwjx made their first contribution in #1852
- @hzhswyz made their first contribution in #1918
- @Fengxq2014 made their first contribution in #1922
Full Changelog: v2.0.7...v2.1.0-rc.1
v2.0.7
What's Changed
- feat: support baidu api key by @cr7258 in #1687
- sync ai-token-ratelimit docs by @cr7258 in #1688
- feat: Add ext-auth plugin support for authentication blacklists/whitelists by @hanxiantao in #1694
- fix gateway env by @daixijun in #1689
- feat: ai-proxy support dify by @kai2321 in #1664
- fix: stream response buffer issue by @cr7258 in #1703
- fix: ext-auth crash bugfix by @hanxiantao in #1705
- optimize body bufferlimit set in ext-auth plugin by @johnlanni in #1707
- fix: Path concatenation issue for authentication requests in Envoy authentication mode by @hanxiantao in #1709
- feat:Improve the return of usage-related information when interfacing with Dify. by @kai2321 in #1715
- e2e: Enhance the e2e testing of the ai-proxy plugin based on the LLM mock server by @hanxiantao in #1713
- ut: add ext-auth unit tests by @hanxiantao in #1710
- wasm32-wasi to wasm32-wasip1 by @007gzs in #1716
- fix host rewrite in frontend-gray by @johnlanni in #1747
- e2e: Enhance the e2e testing of the ai-proxy plugin based on the LLM mock server by @hanxiantao in #1742
- feature: allow ai-proxy to forward standard AI capabilities that are natively supported by @pepesi in #1704
- update ai-cache extension by @mirror58229 in #1746
- ai proxy support passthrough path when api name is unknown by @johnlanni in #1754
- Add translate-readme action to translate English into Chinese by @littlejiancc in #1711
- Supports completions API & support config openai baseUrl through
openaiCustomUrl
by @johnlanni in #1765 - fix openai compatiable by @johnlanni in #1778
- remove basic-auth useless annotation by @johnlanni in #1779
- release 2.0.7 by @johnlanni in #1781
New Contributors
Full Changelog: v2.0.6...v2.0.7
plugins/wasm-go/v1.4.3
feat:接入dify (#1664)
v2.0.6
What's Changed
- feat: add TLS version annotation support for per-rule configuration by @yunmaoQu in #1592
- fix tls version annotation by @johnlanni in #1652
- Update metrics & enable lds cache by @johnlanni in #1650
- rel: Release 2.0.6-rc.1 by @johnlanni in #1653
- Optimize wasmplugin proto by @johnlanni in #1656
- Improve ai plugins by @rinfx in #1657
- remove dependency for ai-statistic by @rinfx in #1660
- [frontend-gray] Micro-frontend grayscale scenario, supporting the IncludePathPrefixes field by @heimanba in #1666
- fix: resolve blocking issue with minimax responses in ai-proxy by @hanxiantao in #1663
- add higress architecture doc by @2456868764 in #1662
- add ai_log field by @johnlanni in #1669
- fix: Fix a typo in the README files of ai-statistics plugin by @CH3CHO in #1670
- Release 2.0.6-rc.2 by @johnlanni in #1671
- update cpp wasm plugins by @johnlanni in #1675
- Fix istio lds cache by @johnlanni in #1679
- release 2.0.6-rc.3 by @johnlanni in #1680
- fix: baidu api issue by @cr7258 in #1685
- Release 2.0.6 by @johnlanni in #1686
New Contributors
Full Changelog: v2.0.5...v2.0.6
v2.0.6-rc.3
What's Changed
- update cpp wasm plugins by @johnlanni in #1675
- Fix istio lds cache by @johnlanni in #1679
- release 2.0.6-rc.3 by @johnlanni in #1680
Full Changelog: v2.0.6-rc.2...v2.0.6-rc.3
v2.0.6-rc.2
What's Changed
- Optimize wasmplugin proto by @johnlanni in #1656
- Improve ai plugins by @rinfx in #1657
- remove dependency for ai-statistic by @rinfx in #1660
- [frontend-gray] Micro-frontend grayscale scenario, supports IncludePathPrefixes field by @heimanba in #1666
- fix: resolve blocking issue with minimax responses in ai-proxy by @hanxiantao in #1663
- add higress architecture doc by @2456868764 in #1662
- add ai_log field by @johnlanni in #1669
- fix: Fix a typo in the README files of ai-statistics plugin by @CH3CHO in #1670
- Release 2.0.6-rc.2 by @johnlanni in #1671
Full Changelog: v2.0.6-rc.1...v2.0.6-rc.2
v2.0.5
What's Changed
- bugfix and extend ai log by @rinfx in #1576
- Support OpenAI embedding. by @duxin40 in #1542
- docs: fix typos in ai-quota document by @mirror58229 in #1589
- fix: default port of static service in ai-cache plugin by @mirror58229 in #1591
- feat: support choosing chatCompletionV2 or chatCompletionPro API for minimax provider by @hanxiantao in #1593
- AI observability upgrade by @rinfx in #1587
- AI proxy return unified status in header phase by @StarryVae in #1588
- qwen bailian compatible bug fix by @rinfx in #1597
- bugfix: cannot parse content if one streaming body has multi chunks by @rinfx in #1606
- optimize ai proxy by @johnlanni in #1603
- redis wrapper support lazy init and database options by @johnlanni in #1602
- Enhance the capabilities of the AI Intent plugin by @007gzs in #1605
- feat: ai-proxy wasm plugin support Together AI by @VinciWu557 in #1617
- feat: Support setting gateway.unprivilegedPortSupported manually by @CH3CHO in #1616
- fix: Make opa listen to all IPs by @CH3CHO in #1621
- feat: retry failed request by @cr7258 in #1590
- move oidcHandler from global to pluginconfig by @rinfx in #1601
- optimize ai cache by @johnlanni in #1626
- Add cohere embedding for ai-cache by @ayanami-desu in #1572
- feat: support github provider for oidc wasm plugin by @Jing-ze in #1639
- fix: Enlarge the default retry timeout in ai-proxy by @CH3CHO in #1640
- ai-cache update body buffer limit size by @johnlanni in #1644
- fix ai proxy checkStream by @johnlanni in #1645
- Release 2.0.5 by @johnlanni in #1646
New Contributors
- @duxin40 made their first contribution in #1542
- @mirror58229 made their first contribution in #1589
- @StarryVae made their first contribution in #1588
- @VinciWu557 made their first contribution in #1617
- @ayanami-desu made their first contribution in #1572
Full Changelog: v2.0.4...v2.0.5
v2.0.6-rc.1
What's Changed
- feat: add TLS version annotation support for per-rule configuration by @yunmaoQu in #1592
- fix tls version annotation by @johnlanni in #1652
- Update metrics & enable lds cache by @johnlanni in #1650
- rel: Release 2.0.6-rc.1 by @johnlanni in #1653
New Contributors
Full Changelog: v2.0.5...v2.0.6-rc.1
v2.0.4
Recommended Upgrade Reasons
Basic capability update
- Support for wildcard domain routing with exact domain fallback
As in the example below, in the previous version, when requesting www.example.com/abcd
, if no route was found under www.example.com
, it would directly return a 404; in the current version, if no route is found under www.example.com
, it will then find route under *.example.com
.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: wildcard-ingress
spec:
rules:
- host: "*.example.com"
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: wildcard-service
port:
number: 80
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: exact-ingress
spec:
rules:
- host: "www.example.com"
http:
paths:
- path: /abc
pathType: Exact
backend:
service:
name: exact-service
port:
number: 80
‼️ Important Fixes
- In the previous 2.x versions, due to issues with the RDS caching strategy, the latest configuration might not have been distributed during high-frequency updates of the ingress. #1547
- The previous 2.x version did not automatically configure the number of Envoy worker threads based on the cpu request/limit.
What's Changed
- AI Agent plugin adds JSON formatting output feature by @xingyunyang01 in #1374
- feat: Automatically generating markdown documentation for helm charts with helm-docs by @littlejiancc in #1496
- Optimize AI security guard plugin by @rinfx in #1473
- fix example sse build error by @007gzs in #1503
- feat: supports custom prepare build script by @jizhuozhi in #1490
- Add a quick deployment solution to Alibaba Cloud by @hanans426 in #1506
- fix workflows build-and-push-wasm-plugin-image by @007gzs in #1508
- fix compile of wasm cpp plugins by @johnlanni in #1511
- use the body returned by the ext auth server when auth fails by @johnlanni in #1510
- feat: implement apiToken failover mechanism by @cr7258 in #1256
- fix: apitoken failover for coze by @cr7258 in #1515
- fix: update oidc plugin go.mod dependencies by @Jing-ze in #1522
- feat: Enhance ai-cache Plugin with Vector Similarity-Based LLM Cache Recall and Multi-DB Support by @EnableAsync in #1248
- fix: Refresh go.mod and go.sum file contents by @CH3CHO in #1525
- add model-mapper plugin & optimize model-router plugin by @johnlanni in #1538
- fix ai fallback by @johnlanni in #1541
- feat: support custom log by @pepesi in #1521
- feat: migrate baidu provider to v2 api by @cr7258 in #1527
- Optimize the overall log output by @johnlanni in #1549
- set concurrency argument of proxy by cpu limit/request by @johnlanni in #1552
- fix: 🐛 frontend-gray plugin incorrect URL parsing leads to routing failure. by @heimanba in #1550
- update ai proxy go mod by @johnlanni in #1556
- fix: qwen stream issue by @cr7258 in #1564
- fix xds cache by @johnlanni in #1559
- fix moonshot usage compatible problem by @rinfx in #1568
- feat: ai-proxy support dashscope-finance by @pepesi in #1554
- solve aliyun lvwang content length limit problem by @rinfx in #1569
- feat: allow cover api-version when use ai-proxy azure provider by @pepesi in #1535
- extension mechanism for custom logs and span attributes by @rinfx in #1451
- feat: ai-proxy support custom error handler by cover util.ErrorHandler by @pepesi in #1537
- rel: Release 2.0.4 by @johnlanni in #1571
New Contributors
- @hanans426 made their first contribution in #1506
Full Changelog: v2.0.2...v2.0.4