minux

Results 93 issues of minux

Motivation: When an HTTP/1.1 304(Not Modified) response is sent, `Transfer-Encoding: chunked` header cannot be sent because the content of the response is always empty. https://datatracker.ietf.org/doc/html/rfc7232#section-4.1 ``` A 304 response cannot...

defect

Motivation: - We use `idleTimeout` value to set the HTTP/2 graceful shutdown timeout on the client side. However, it's not set correctly. - We try to set the value here:...

defect

``` org.awaitility.core.ConditionTimeoutException: Assertion condition defined as a com.linecorp.armeria.internal.common.Http2KeepAliveHandlerTest expected: PENDING_PING_ACK but was: SHUTDOWN within 10 seconds. at app//org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:167) at app//org.awaitility.core.AssertionCondition.await(AssertionCondition.java:119) at app//org.awaitility.core.AssertionCondition.await(AssertionCondition.java:31) at app//org.awaitility.core.ConditionFactory.until(ConditionFactory.java:985) at app//org.awaitility.core.ConditionFactory.untilAsserted(ConditionFactory.java:769) at app//com.linecorp.armeria.internal.common.Http2KeepAliveHandlerTest.verifyPingAck(Http2KeepAliveHandlerTest.java:94) at [email protected]/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native...

``` SuspendingAnnotatedServiceTest > test_blockingAnnotation() FAILED org.opentest4j.AssertionFailedError: expected: 200 but was: 500 at [email protected]/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at [email protected]/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) at [email protected]/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at [email protected]/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) at app//com.linecorp.armeria.server.kotlin.SuspendingAnnotatedServiceTest.test_blockingAnnotation(SuspendingAnnotatedServiceTest.kt:117) ```

cleanup

Motivation: It would be nice if we can provide a service that supports [The WebSocket Protocol](https://datatracker.ietf.org/doc/html/rfc6455) Modifications: - Add `WebSocketService` and `WebSocketHandler` to implement the service using back pressure. -...

new feature

This is an example stack trace of a `CompositeException`: ``` com.linecorp.armeria.common.util.CompositeException: 2 exceptions occurred. at com.linecorp.armeria.common.stream.AbstractStreamMessage$CloseEvent.notifySubscriber(AbstractStreamMessage.java:273) at com.linecorp.armeria.common.stream.DefaultStreamMessage.notifySubscriberOfCloseEvent0(DefaultStreamMessage.java:300) at com.linecorp.armeria.common.stream.DefaultStreamMessage.lambda$notifySubscriberOfCloseEvent$3(DefaultStreamMessage.java:294) at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:391) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)...

improvement
good first issue

Such as https://start.spring.io/, so a user can easily start building the application using Armeria.

new feature

Let's look at the following example: ```java 1: ServerBuilder sb = ... 2: sb.annotatedService() 3: .decorator(delegate -> (ctx, req) -> { 4: return delegate.serve(ctx, req).mapHeaders(headers -> { 5: System.err.println("This isn't...

discussion

Currently, we support Spring and WebFlux integration that switches the networking layers of the Spring server and client to Armeria. I'm wondering if there are any demands for Spring Cloud...

discussion

Thanks to @ta7uw, we can use decorator annotation to decorate gRPC services. #4041 It would be also very useful if we can use the annotation in Thrift services.

new feature