Apoxy v0.15.0
Released March 3, 2026
Based on the git commits provided, here are the release notes for v0.15.0:
Release Notes - v0.15.0
Features
- Interactive Installation TUI: Added interactive terminal UI for
apoxy k8s installcommand (759b464) - Domain Record Management: Introduced new DomainRecord API type with custom field selectors and bidirectional Domain ↔ DomainRecord reflection (a6ce1f7, 0f70939, ce1c669)
- Domain CLI Commands: Added
domainanddomain zonecommands with emoji target display and improved column formatting (5a9d2d7, be8bc00, d7e0ad8) - Gateway API Reflection: Implemented kube-mirror Gateway API reflection controller with GatewayClass filtering (50a52e5, 0c38e1e)
- DirectResponse Support: Added DirectResponse CRD for static HTTP responses (7d4764b, 6f6b895)
- Edge Runtime Controller: Added EdgeController for per-namespace runtime management (7d145c3)
- Tunnel Integration: Integrated tunnel client into
apoxy runruntime component with connection lifecycle callbacks (5680a90, 80d07c9) - Latency-based Edge Selection: Added multi-ping edge selection with outlier removal and /ping endpoint (e28d330, 3f2a2eb)
- Dashboard Configuration: Added
--dashboard-urland--api-base-urlflags toapoxy auth(60f646b)
Improvements
- CLI Output Formatting: Added
-o json/yamloutput formatting to all get/list commands (bce8bf8, 2d34eca) - Field Selectors: Added
--field-selectorflag to all list commands with--zoneshortcut for domains (de0f2ef) - Error Messages: Improved error messages for missing runtime components and rewrote API not-found errors to use user-facing names (ec69172, 321f4b3)
- Install Plan Diffing: Use dry-run SSA for install plan diffing (5c7c95a)
- Cluster Name Recovery: Recover existing cluster name from namespace annotation on reinstall (616c82a)
- Domain API v1alpha3: Added core/v1alpha3 with per-record TTL, Conditions/Records status, and improved DNS record types (739ba3d, df74af3, 885ba0a)
- CLI Table Output: Added Status column to CLI table output (d71a4d1)
- Gateway Extension Hooks: Invoke PostVirtualHostModify and PostRouteModify extension hooks during xDS translation (7c028d5, ce7fd1e)
- xDS Bootstrap Configuration: Added TLS, SNI, and authority header support for xDS bootstrap config (c85ee19, 7eab064, 8ed65be)
Bug Fixes
- API Validation: Fixed A/AAAA IP format validation and silent misclassification (c30c045)
- API Security: Reject status.type tampering via ValidateUpdate and skip validation for deleted objects (0697ab3, 1a0509e)
- DomainRecord Validation: Validate DomainRecord metadata.name matches derived name (c3acaeb)
- SQLite Database: Enable incremental auto_vacuum, drop litestream recovery artifacts, and fix lost_and_found cleanup (8abb52b, 36a2ccf, c85ee19)
- Tunnel Addresses: Remove stale overlay addresses in SetAddr (47419da)
- API Client Generation: Fixed DirectResponse client generation and removed subdomains field (51c5041)
- Status Deduplication: Deduplicate proxy replica status writes on xDS events (9445e52)
Infrastructure
- Kubernetes v1.34 Upgrade: Complete upgrade to Kubernetes v1.34 with compatibility fixes (a6e1bc9, 4f8a5a3, 46145d7, 9a9c92f, 633ffe3)
- Dependency Updates: Bumped runc v1.2.2 → v1.2.5 and kine to v0.14.11 (9cee1c7, f7cda56)
- Build Optimizations: Added sccache and mold for faster edge-runtime builds with native arch workers (c7a05b9, 558f10f, 3800a00)
- Image Registry: Moved edge-runtime images to Google Artifact Registry (ea5de14)
- Kine Compaction: Added kine compaction observability (6ab2f66)
- API Server Extensibility: Added WithAddToScheme, WithSkipBuiltinControllers, and WithOpenAPIDefinitions options (ccc3c8e, b6149b1, 19d27c9)
- Gateway Status: Implemented Gateway status error handling (d71a4d1)
- Build Configuration: Added sqlite_enable_dbstat_vtab build tag to all CGO builds (bb038b0)
Full Changelog: https://github.com/apoxy-dev/apoxy/compare/v0.14.0...v0.15.0