Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add release notes for 1.25.0 #5114

Merged
merged 16 commits into from
Aug 22, 2023
Merged

Add release notes for 1.25.0 #5114

merged 16 commits into from
Aug 22, 2023

Conversation

jrhee17
Copy link
Contributor

@jrhee17 jrhee17 commented Aug 15, 2023

FireShot Capture 010 - 1 25 0 release notes — Armeria release notes - localhost

@jrhee17 jrhee17 added this to the 1.25.0 milestone Aug 15, 2023
@codecov
Copy link

codecov bot commented Aug 15, 2023

Codecov Report

Patch coverage has no change and project coverage change: -0.02% ⚠️

Comparison is base (1ce4c69) 74.30% compared to head (2090811) 74.29%.
Report is 8 commits behind head on main.

❗ Current head 2090811 differs from pull request most recent head 1f6d69b. Consider uploading reports for the commit 1f6d69b to get more accurate results

Additional details and impacted files
@@             Coverage Diff              @@
##               main    #5114      +/-   ##
============================================
- Coverage     74.30%   74.29%   -0.02%     
- Complexity    19600    19619      +19     
============================================
  Files          1682     1683       +1     
  Lines         72260    72585     +325     
  Branches       9242     9304      +62     
============================================
+ Hits          53695    53927     +232     
- Misses        14222    14285      +63     
- Partials       4343     4373      +30     

see 30 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
@jrhee17 jrhee17 marked this pull request as ready for review August 21, 2023 08:23
@jrhee17 jrhee17 requested review from ikhoon and minwoox as code owners August 21, 2023 08:23
Copy link
Member

@minwoox minwoox left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left minor suggestions. Thanks! 👍

site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
.decorator(ObservationService.newDecorator(observationRegistry))
...
```
- You may now use <type://WebSocketClient> to call websocket services. #4972
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

- **WebSocket Support**: You can now send and receive data over [WebSocket](https://en.wikipedia.org/wiki/WebSocket)
  using <type://WebSocketClient>.

webSocketSessions.inbound().subscribe(subscriber);
});
```
- <type://GoogleGrpcStatusFunction> is introduced so that users can more easily implement
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about:

You can now easily use gRPC [Richer Error Model](https://grpc.io/docs/guides/error/#richer-error-model) via <type://GoogleGrpcStatusFunction>.

Comment on lines 37 to 38
if (throwable instanceof MyException) {
return ...;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if (throwable instanceof MyException) {
return ...;
if (throwable instanceof MyException) {
return ...;

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about also returning the Status so that users notice what the return type is?

if (throwable instanceof MyAuthenticationException) {
  return com.google.rpc.Status.newBuilder()
                              .setCode(Code.UNAUTHENTICATED.getNumber())
                              .addDetails(detail(throwable))
                              .build();
}
...

GrpcService.builder()
.exceptionMapping(statusFunction)
```
- Users can now retrieve headers from a multipart request in an annotated service
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe that we are writing release notes with a more user-focused style. 😉
https://www.knowledgeowl.com/blog/posts/release-notes-anne-edwards/

Suggested change
- Users can now retrieve headers from a multipart request in an annotated service
- You can now retrieve headers from a multipart request in an annotated service

alive when a HTTP/2 PING frame or `OPTIONS * HTTP/1.1` is received. The option can be configured
by <type://ServerBuilder#idleTimeout(Duration,boolean)> or
<type://ClientFactoryBuilder#idleTimeout(Duration,boolean)>. #4794 #4806
- You can now easily create a <type://StreamMessage> from a future using <type://StreamMessage#of(CompletionStage<?>)>. #4995
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

future -> CompletableFuture

## 📈 Improvements

- The number of event loops is equal to the number of cores by default when `io_uring` is used as the transport type. #5089
- Users may now customize error responses when a service for a request is not found
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Users may now customize error responses when a service for a request is not found
- You can now customize error responses when a service for a request is not found


- <type://GrpcService> now returns an `INTERNAL` error code if an error occurs while serializing gRPC metadata. #4625 #4686
- <type://DnsCache> now allows zero TTL for resolved DNS records. #5119
- Armeria's DNS resolver doesn't cache a DNS query timeout. #5117
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Armeria's DNS resolver doesn't cache a DNS query timeout. #5117
- Armeria's DNS resolver doesn't cache a DNS whose query was timed out. #5117

- Fixed a bug where headers could be written twice if `Content-Length` was exceeded during HTTP/2 cleartext upgrade. #5113
- <type://ServiceRequestContext#localAddress()> and <type://ServiceRequestContext#remoteAddress()> now return
correct values when using domain sockets in abstract namespace. #5096
- `armeria-logback12`, `armeria-logback13`, `armeria-logback14` have been introduced for better
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- `armeria-logback12`, `armeria-logback13`, `armeria-logback14` have been introduced for better
- `armeria-logback12`, `armeria-logback13`, and `armeria-logback14` have been introduced for better

Comment on lines 89 to 90
- <type://HttpResponse#from(CompletionStage)> and its variants methods are deprecated.
- Use <type://HttpResponse#of(CompletionStage)> and its variants instead. #5075
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- <type://HttpResponse#from(CompletionStage)> and its variants methods are deprecated.
- Use <type://HttpResponse#of(CompletionStage)> and its variants instead. #5075
- <type://HttpResponse#from(CompletionStage)> and its variants methods are deprecated. #5075
- Use <type://HttpResponse#of(CompletionStage)> and its variants instead.

Copy link
Member

@minwoox minwoox left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! 👍 👍 👍

site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
- **Keep an Idle Connection Alive on PING**: The `keepAliveOnPing` option has been introduced. Enabling this option will keep
an idle connection alive when a HTTP/2 PING frame or `OPTIONS * HTTP/1.1` is received. The option can be configured
by <type://ServerBuilder#idleTimeout(Duration,boolean)> or <type://ClientFactoryBuilder#idleTimeout(Duration,boolean)>. #4794 #4806
- **Create a StreamMessage from Future**: You can now easily create a <type://StreamMessage> from a <type://CompletionStage>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- **Create a StreamMessage from Future**: You can now easily create a <type://StreamMessage> from a <type://CompletionStage>
- **Create a StreamMessage from Future**: You can now easily create a <type://StreamMessage> from a `CompletionStage`

Because CompletionStage is not an API from Armeria, it's not rendered via type.

jrhee17 and others added 6 commits August 22, 2023 11:28
Co-authored-by: minux <songmw725@gmail.com>
Co-authored-by: minux <songmw725@gmail.com>
Co-authored-by: minux <songmw725@gmail.com>
Co-authored-by: minux <songmw725@gmail.com>
Co-authored-by: minux <songmw725@gmail.com>
date: 2023-08-22
---

## 🌟 New features
Copy link
Contributor

@ikhoon ikhoon Aug 22, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Notes for the newly added commits:

- You can now easily set trailers to be sent after the data stream using <type://HttpResponse#of(RequestHeaders,Publisher,HttpHeaders)>. #3959 #4727

- Kafka client 3.4.0 → 3.4.1
- Kotlin 1.8.22 → 1.9.0
- Kotlin Coroutine 1.7.1 → 1.7.3
- Logback 1.4.8 → 1.4.11
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://github.com/line/armeria/blob/armeria-1.24.3/dependencies.toml#L81

Suggested change
- Logback 1.4.8 → 1.4.11
- Logback 1.4.7 → 1.4.11

- Kotlin Coroutine 1.7.1 → 1.7.3
- Logback 1.4.8 → 1.4.11
- Micrometer 1.11.1 → 1.11.3
- Netty 4.1.95.Final → 4.1.96.Final
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://github.com/line/armeria/blob/armeria-1.24.3/dependencies.toml#L87

Suggested change
- Netty 4.1.95.Final → 4.1.96.Final
- Netty 4.1.94.Final → 4.1.96.Final


## ⛓ Dependencies

- gRPC-Java 1.56.1 → 1.57.2
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://github.com/line/armeria/blob/armeria-1.24.3/dependencies.toml#L38

Suggested change
- gRPC-Java 1.56.1 → 1.57.2
- gRPC-Java 1.56.0 → 1.57.2


## 🌟 New features

- **GraalVM Support**: You can now easily build [GraalVM](https://www.graalvm.org/) native images for Armeria applications. #5005
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about?

Suggested change
- **GraalVM Support**: You can now easily build [GraalVM](https://www.graalvm.org/) native images for Armeria applications. #5005
- **GraalVM Support**: Armeria now provides [GraalVM](https://www.graalvm.org/) [reachability metadata](https://www.graalvm.org/latest/reference-manual/native-image/metadata/) to easily build [GraalVM](https://www.graalvm.org/) native images. #5005

Copy link
Member

@trustin trustin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Capitalization consistency + two new changes 🙇

site/src/pages/release-notes/1.25.0.mdx Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Outdated Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Show resolved Hide resolved
site/src/pages/release-notes/1.25.0.mdx Show resolved Hide resolved
jrhee17 and others added 3 commits August 22, 2023 13:14
Copy link
Contributor

@ikhoon ikhoon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @jrhee17! 🙇‍♂️🚀

Copy link
Member

@trustin trustin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Niiiice! 🙇

@jrhee17 jrhee17 merged commit cdcb18e into line:main Aug 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants