Awesome
Cap'n Proto bindings for Go
Cap’n Proto is an insanely fast data interchange format similar to Protocol Buffers, but much faster.
It also includes a sophisticated RPC system based on Object Capabilities, ideal for secure, low-latency applications.
This package provides:
- Go code-generation for Cap'n Proto
- Runtime support for the Go language
- Level 1 support for the Cap'n Proto RPC protocol
Support for Level 3 RPC is planned.
Getting Started
Read the "Getting Started" guide for a high-level introduction to the package API and workflow.
Help and Support
You can find us on Matrix: Go Cap'n Proto
API Reference
Available on pkg.go.dev
API Compatibility
Until the official Cap'n Proto spec is finalized, this repository should be considered <u>beta software</u>.
We use semantic versioning to track compatibility and signal breaking changes. In the spirit of the Go 1 compatibility guarantee, we will make every effort to avoid making breaking API changes within major version numbers, but nevertheless reserve the right to introduce breaking changes for reasons related to:
- Security.
- Changes in the Cap'n Proto specification.
- Bugs.
An exception to this rule is currently in place for the pogs
package, which is relatively new and may change over time. However, its functionality has been well-tested, and breaking changes are relatively unlikely.
Note also we may merge breaking changes to the main
branch without notice. Users are encouraged to pin their dependencies to a major version, e.g. using the semver-aware features of go get
.
License
MIT - see LICENSE file