v1.5.0
[1.5.0] — 2026-08-29
Added — the gateway is importable
A new public run package exposes the ferrogw program to Go code. run.Main()
is what cmd/ferrogw now calls; run.Run(ctx, opts...) runs the same server
under a caller-owned context and returns startup and listen errors instead of
exiting the process, with context cancellation triggering the same graceful
shutdown as SIGTERM. A custom binary is a main that blank-imports its plugins
and calls run.Main() — the process lane. httpgateway (since 1.4.2) remains
the library lane for mounting gateway surfaces behind your own middleware.
Closes #206.
The server now binds its listener before it starts observing shutdown, so a
cancellation that arrives during startup can no longer leave a listener behind.
Existing ferrogw behaviour — commands, flags, exit codes — is unchanged.
Contributors
Thanks to everyone who shipped this release:
- feat: add importable gateway runtime (#420) — @MitulShah1
Full changelog: https://github.com/ferro-labs/ai-gateway/blob/v1.5.0/CHANGELOG.md