Releases: uber/tchannel-go
Releases · uber/tchannel-go
Version 1.2.1
- Fix data race on headers when making concurrent calls using the same context. (#505)
Version 1.2.0
- Adds support for routing key transport headers (rk). (#496)
v1.1.0
- Integrate OpenTracing for distributed tracing and context propagation.
As long as a Zipkin-style tracing is configured, TChannel frames still
send tracing information, andCurrentSpan(ctx)
works as before.
All tracer configuration must be handled through OpenTracing.
(#426) - Improve error messages when using the json package and the host:port
fails to connect. (#475) - mockhyperbahn now using inbuilt TChannel relaying to implement in-process
forwarding. (#472) - Drop go1.4 support and add support for go1.7.
- Pass thrift.Context to the thrift.Server's response callback (#465)
v1.0.9
Changes since v1.0.8
v1.0.8
Changes since 1.0.6
- Add CallOptions() to IncomingCall which can be used as the call option
when making outbound calls to proxy all transport headers. - Add tracing information to all error frames generated by the library.
- Add GetHandlers for getting all registered methods on a subchannel.
- Fix peer score not being calculated when adding a new outbound connections
- Expose the peer information for outbound calls.
- Support a separate connection timeout from the context timeout, useful for
streaming calls where the stream timeout may be much longer than the
connection timeout.
v1.0.6
v1.0.5
Changes since 1.0.4
- Use
context.Context
storage for headers sothrift.Context
and
tchannel.ContextWithHeaders
can be passed to functions that use
context.Context
, and have them retain headers. thrift.Server
allows a custom factory to be used forthrift.Context
creation based on the underlyingcontext.Context
and headers map.- Store goroutine stack traces on channel creation that can be accessed
via introspection.
v1.0.4
Changes since v1.0.3
- Improve handling of network failures during pending calls. Previously, calls
would timeout, but now they fail as soon as the network failure is detected. - Remove ephemeral peers with closed outbound connections.
- #233: Ensure errors returned from Thrift handlers have a non-nil value.
- #228: Add registered methods to the introspection output.
- Add ability to set a global handler for a SubChannel.
v1.0.3
Changes since 1.0.3
- Improved performance when writing Thrift structs
- Make closing message exchanges less disruptive, changes a panic due to
closing a channel twice to an error log. - Introspection now includes information about all channels created
in the current process.
v1.0.2
Changes since 1.0.1
- Extend the
ContextBuilder
API to support setting the transport-level routing delegate header. - Set a timeout when making new outbound connections to avoid hanging.
- Fix for #196: Make the initial Hyperbahn advertise more tolerant of transient timeouts.
- Assorted logging and test improvements.