Skip to content

Releases: line/armeria

armeria-0.14.0.Final

20 Apr 08:37
Compare
Choose a tag to compare

New features

  • #139 Add circuit breaker metrics

Improvements

  • #145 Add more debug information to HTTP/2 GOAWAY frame

Bug fixes

  • #147 Fix NPE when Server startup fails
  • #146 Make Tomcat allow a .JAR file that contains a webapp

Clean-up

  • #143 Upgrade dependencies

armeria-0.13.4.Final

12 Apr 05:18
Compare
Choose a tag to compare

Bug fixes

  • #140 Add 'Content-Length' header to the last response
  • #141 Do not attempt to send a response to a closed connection/stream

armeria-0.13.3.Final

12 Apr 05:17
Compare
Choose a tag to compare

Bug fixes

  • #138 Fix delayed notification of session creation failure and log GOAWAY frames

armeria-0.13.2.Final

05 Apr 06:16
Compare
Choose a tag to compare

Bug fixes

  • #136 Use singleton list instead of array list for SimpleHttpInvocation.params()
  • #131 Fix 'exceptionCaught/inbound message reached at the tail of the pipeline' warnings

armeria-0.13.1.Final

02 Apr 06:37
Compare
Choose a tag to compare

New features

  • #134 Add system properties to disable /dev/epoll or OpenSSL
    • It is not recommended to disable them unless you experience a problem. Please work with us to fix the problem.

Improvements

  • #132 Upgrade dependencies to their latest stable versions

Bug fixes

  • #135 Upgrade to Netty 4.1.0.CR6 to fix DNS resolver issues
  • #133 Avoid NPE when tracing failed client invocations without messages

armeria-0.13.0.Final

31 Mar 09:47
Compare
Choose a tag to compare

New features

  • #124 Circuit breaker
  • #129 Upgrade to Netty 4.1.0.CR5
  • #129 Use epoll and BoringSSL when running on linux-x86_64

Bug fixes

  • #128 Disconnect before HTTP/2 stream ID overflows

armeria-0.12.2.Final

30 Mar 05:42
Compare
Choose a tag to compare

Bug fixes

  • #130 Fix NPE while recording tracing annotations

armeria-0.12.1.Final

25 Mar 06:48
Compare
Choose a tag to compare

Bug Fixes

  • #127 Propagate all non-null ServerSpans (Zipkin integration)

armeria-0.12.0.Final

24 Mar 06:47
Compare
Choose a tag to compare

New features

  • #122 Make EventLoop available to RemoteInvoker.invoke()
    • NB: This is a breaking change due to the signature change of RemoteInvoker.invoke(). You won't notice this at all if you did not implement RemoteInvoker by yourself to write a decorator.
  • #125 Allow registering callbacks when propagating a ServiceInvocationContext
    • You can add callbacks to a ServiceInvocationContext via onEnter(Runnable) and onExit(Runnable).

armeria-0.11.0.Final

04 Mar 06:09
Compare
Choose a tag to compare

New features

  • #114 Distributed tracing via Zipkin/Brave

This release introduces distributed tracing capability to Armeria clients and servers using Brave, a distributed tracing library compatible with Zipkin. This enables us to watch timing data among the whole Armeria RPC chain.

Decorating a client

// Create a brave instance with service name, span collector, and sampling rate.
Brave brave = new Brave.Builder("MyClientMain")
        .spanCollector(new ScribeSpanCollector("127.0.0.1", 9410))
        .traceSampler(Sampler.create(0.01f))
        .build();

MyService.Iface client =
        new ClientBuilder("tbinary+http://127.0.0.1:8080/thrift/myService")
                .decorator(HttpTracingClient.newDecorator(brave))
                .build(MyService.Iface.class);

Decorating a server

// Create a brave instance with service name, span collector, and sampling rate.
Brave brave = new Brave.Builder("MyServiceMain")
        .spanCollector(new ScribeSpanCollector("127.0.0.1", 9410))
        .traceSampler(Sampler.create(0.01f))
        .build();

ServerBuilder builder = new ServerBuilder();
builder.port(8080, SessionProtocol.HTTP);
builder.serviceAt("/thrift/myservice",
                  ThriftService.of(new MyServiceHandler(brave))
                               .decorate(HttpTracingService.newDecorator(brave));

Bug fixes

  • #118 Default maxFrameLength differs between client and server side.
  • #119 Unexpected exceptions are not logged properly.