Skip to content

v1.0.0

Compare
Choose a tag to compare
@ccmtaylor ccmtaylor released this 23 Nov 08:40
· 147 commits to master since this release

With the update to the latest Twirp protocol version, we've reached a point where we're happy enough with the current state of Twinagle to cut a 1.0.0 release. Going forward, we'll aim to adhere to Semantic Versioning. That means that

  • the public API will remain backwards-source-compatible within a major release. Since Twinagle generates code, there may be some APIs that are meant only for use from generated code. These will be explicitly documented as such, and are exempt from backwards compatibility requirements.
  • We expect the version of the twinagle runtime to be the same exact version of Twinagle that was used to generate the code. We may relax this requirement later.

✨ Improvements

  • Implement Twirp protocol v7 (#182)
    • update HTTP status code mapping for resource_exhausted error
    • make /twirp HTTP path prefix configurable
    • JSON serialization: include default values in server responses
  • Translate failures caused by finagle request cancellations (#178)
  • Improved scaladocs on public library interface (#188)

⚠️ Breaking Changes

We've tightened up the API for this release and hidden some implementation details that were exposed by accident.

  • ServerBuilder is no longer a case class. This means that there is no longer a copy() method, and the classes' fields are now hidden.
  • object TracingFilter is no longer publically visible

🎩 Updates

  • Finagle 20.10.0 (#180)