v0.10.0 interoperability tests
·
104 commits
to master
since this release
Tested with the following targets:
Added new interoperability tests
We have defined a new interoperability test suite implementing the following schema:
webrpc = v1
name = Test
version = v0.10.0
service TestApi
- GetEmpty()
- GetError()
- GetOne() => (one: Simple)
- SendOne(one: Simple)
- GetMulti() => (one: Simple, two: Simple, three: Simple)
- SendMulti(one: Simple, two: Simple, three: Simple)
- GetComplex() => (complex: Complex)
- SendComplex(complex: Complex)
All generators are expected to implement TestApi schema and run client/server interoperability tests against a reference webrpc-test binaries).
For more info, see typescript or golang tests.
Breaking changes in ridl package Go API
-func NewParser(r *schema.Reader) *Parser
+func NewParser(fsys fs.FS, path string) *Parser
Breaking changes in gen package Go API
- func NewTemplateSource(proto *schema.WebRPCSchema, target string, config *Config) (*TemplateSource, error)
+ func NewTemplateSource(target string, config *Config) (*TemplateSource, error)
Changelog
- 4fed3b0: Accept io.FS in RIDL parser (#178) (@VojtechVitek)
- aabb887: Bump to webrpc@v0.10.0 (#182) (@VojtechVitek)
- e7fd8ea: Fix CI: Regenerate all _examples/ (#177) (@VojtechVitek)
- 3f2508a: Improve interoperability test suite: Add more RPC methods to TestApi (#181) (@VojtechVitek)
- 4326cfc: Invalidate Github Actions cache every day (#180) (@VojtechVitek)
- 92e3dbe: v0.9.0 changelog: Document ENUM type JSON schema changes (#179) (@VojtechVitek)
Docker
docker pull ghcr.io/webrpc/webrpc-gen:v0.10.0
Example: docker run -v $PWD:$PWD ghcr.io/webrpc/webrpc-gen:v0.10.0 -schema=$PWD/api.ridl -target=golang
Homebrew
brew tap webrpc/tap
brew install webrpc-gen
Build from source
go install -ldflags="-s -w -X github.com/webrpc/webrpc.VERSION=v0.10.0" github.com/webrpc/webrpc/cmd/webrpc-gen@v0.10.0
Download binaries
macOS: amd64, arm64 (Apple Silicon)
Linux: amd64, arm64
Windows: amd64, arm64