v0.3.0
Released 20 August 2026.
Install
go install github.com/caspel26/goninja/cmd/goninja@v0.3.0
go get github.com/caspel26/goninja@v0.3.0Requires Go 1.25 or newer.
Added
Router adapters without framework lock-in
goninja resources can now mount through a small goninja.Router interface.
The Gin, Echo, and Chi adapters translate generated stdlib-style route patterns
and retain req.PathValue("id") for generated handlers. Each adapter is its
own Go module, so plain net/http users do not inherit router dependencies.
Benchmarks and a regression gate
make bench runs request-path benchmarks for list serialization, filter
construction, and relation retrieval. make bench-check compares repeated
runs against a committed baseline with benchstat, failing statistically
significant regressions over the configured threshold; it also publishes a
readable CI report. make bench-profile produces CPU and memory profiles for
investigating a change.
Changed
Resource.Register now accepts goninja.Router rather than
*http.ServeMux. *http.ServeMux already satisfies the interface; only
hand-written resource implementations need adapting.