Releases: monadicstack/frodo
v1.1.3
This patch simply contains a few additional convenience functions in the rpc/errors
package:
Status(err error) int
to infer the most appropriate HTTP status code for the given error.IsNotFound()
,IsBadRequest()
, etc to test if any error is (at any level of unwrapping) that type.Unexpected()
as a shorthand forInternalServerError()
v1.1.2
Only contains a fix for issues were you couldn't pass a generated service gateway to rpc.Compose()
.
v1.1.1
Fixes a few bugs, quality of life tweaks, and documentation updates:
- Negroni logger middleware no longer panics
- Can register custom not found handler functions
- Lots of documentation fixes
- Generated artifacts include their generated timestamp
- Request binder properly handles embedded structs
A huge thanks to @bradrf for kicking the tires and bringing a lot of this to light.
v1.1.0
Primarily contains support for raw file/content responses. As long as service responses implement ContentReader/Writer
the gateway and clients will treat the response as raw bytes, not JSON.
v0.1.0
I've puttered around with this enough that I can at least publish a stable build. I can't promise the API won't change in the future but it's been pretty stable for a few weeks so I'm fairly confident in where it is for now. I'll add more languages in the future, but for now here's what's supported in the initial release:
- RPC gateway in Go
- RPC clients in Go, JS, and Dart
- Middleware support
- Authorization propagation
- Metadata propagation
- Request binding that works on POST bodies, path params, and query string values
- A decent test suite for core functionality as well as the generated artifacts
There is half-assed or incomplete support for:
- RPC client in Java (half-finished)
- Generation of OpenAPI documentation (it works but schema definitions are pretty weak sauce)