Notice
-
Support for API7
3.3.xand3.4.xin ADC has been discontinued. API73.5.xto3.8.xare now supported.
If you have questions about this, please contact the API7 Support. -
The OpenAPI converter has introduced a breaking change. This is not expected to impact your actual use case. #321
We've now introduced a slight break change where your server's URL will no longer emit aservice.path_prefixregardless of whether it contains a path suffix or not, and every path will be inlined as a prefix in the uri of every route.The value of path_prefix is still resolved from the first server's URL as before.
The reason for this change is that APISIX does not support path_prefix and strip_path_prefix, and we had to choose a more widely compatible way to achieve a similar effect.
Highlight
New OpenAPI Converter Implementation
We have switched to a new OAS parser library implementation that offers improved code quality and new features.
ADC now also supports Swagger (OpenAPI 2.0), which will be transparently upgraded to OpenAPI 3.1 behind the scenes before being converted into ADC configurations.
Performance improvements
We have introduced performance modifications across multiple domains within ADC, including:
- YAML parser: Achieves speed advantages on larger YAML files
- APISIX Standalone backend
What's Changed
- docs(readme): remove hardcoded download link by @bzp2010 in #294
- feat(apisix-standalone): optional sync put request by @bzp2010 in #298
- feat(core): faster YAML and JSON parser by @bzp2010 in #299
- perf(apisix-standalone): remove immerjs by @bzp2010 in #300
- chore: replace typescript alias with pnpm workspace by @bzp2010 in #301
- chore: update tsconfig reference by @bzp2010 in #303
- feat(core): move linter to zod4 by @bzp2010 in #304
- feat(core): add ingress server mode by @bzp2010 in #305
- feat(core): configurable ingress server listen by @bzp2010 in #306
- feat(core): ingress server listen on https and UDS http by @bzp2010 in #307
- feat(ci): build dev image for commit on main branch by @bzp2010 in #309
- chore(core): remove ingress server etag header by @bzp2010 in #311
- fix(core): ingress server listen no TLS endpoint by @bzp2010 in #310
- feat(core): ingress server status endpoint by @bzp2010 in #312
- chore: add code owners for review approval by @bzp2010 in #313
- feat(core): ingress server local configuration filter by @bzp2010 in #314
- feat(core): move to separate differ module by @bzp2010 in #316
- chore: move jest to vitest by @bzp2010 in #317
- chore: move eslintrc to eslint flat config by @bzp2010 in #318
- feat(converter-openapi): move to new openapi parser by @bzp2010 in #321
- refactor(apisix-standalone) by @bzp2010 in #320
- fix(core): ingress server sync API server option accept multiple endpoints by @bzp2010 in #322
- feat(apisix-standalone): separate inline upstream by @bzp2010 in #319
- docs(converter-openapi): fix typo by @juzhiyuan in #315
- feat(apisix-standalone): use millisecond timestamp as conf version by @bzp2010 in #323
- feat(core): add debug log to ingress server by @bzp2010 in #324
- fix(apisix-standalone): handle inline upstream update and delete by @bzp2010 in #326
- test(apisix-standalone): add inline upstream update 2 times case by @bzp2010 in #327
- fix(apisix-standalone): ensure PUT sent when no diff events by @bzp2010 in #328
- feat(apisix-standalone): add server field to sync result by @bzp2010 in #329
- feat(apisix-standalone): use one of servers when no XLM header by @bzp2010 in #330
- feat: bump to 0.21.0 by @bzp2010 in #331
Full Changelog: v0.20.0...v0.21.0