Will Play 2.5.x upgrade to netty 4.1?

1,475 views
Skip to first unread message

Taehyun Park

unread,
Apr 16, 2016, 1:36:52 AM4/16/16
to play-framework
Hello. I've been using Play since 2011 and I've been upgrading play as soon as a major release as it gives you better performance and improvements. I was going to migrate to Play 2.5.x when it is released but I had to stick with Play 2.4 due to a netty dependency conflict. Netty 4.1 is close to stable release and I was wondering if Play will upgrade to netty 4.1 as well.

Greg Methvin

unread,
Apr 16, 2016, 2:03:04 AM4/16/16
to play-framework
It would not be possible on 2.5.x since there are backwards-incompatible changes in 4.1. But we can upgrade to netty 4.1 in 2.6.x.

Greg

On Fri, Apr 15, 2016 at 10:36 PM, Taehyun Park <gold.d...@gmail.com> wrote:
Hello. I've been using Play since 2011 and I've been upgrading play as soon as a major release as it gives you better performance and improvements. I was going to migrate to Play 2.5.x when it is released but I had to stick with Play 2.4 due to a netty dependency conflict. Netty 4.1 is close to stable release and I was wondering if Play will upgrade to netty 4.1 as well.

--
You received this message because you are subscribed to the Google Groups "play-framework" group.
To unsubscribe from this group and stop receiving emails from it, send an email to play-framewor...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/play-framework/887d88ff-28d2-47bb-86d1-9e5da56cb04c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Greg Methvin
Senior Software Engineer

Marcos Pereira

unread,
Apr 18, 2016, 1:38:36 PM4/18/16
to play-fr...@googlegroups.com
What dependency conflict did you have?

On Sat, Apr 16, 2016 at 2:36 AM Taehyun Park <gold.d...@gmail.com> wrote:
Hello. I've been using Play since 2011 and I've been upgrading play as soon as a major release as it gives you better performance and improvements. I was going to migrate to Play 2.5.x when it is released but I had to stick with Play 2.4 due to a netty dependency conflict. Netty 4.1 is close to stable release and I was wondering if Play will upgrade to netty 4.1 as well.

--

Taehyun Park

unread,
May 25, 2016, 7:58:01 PM5/25/16
to play-framework
Sorry for the late reply. I'm using gRPC which requires netty 4.1.
I've seen play users using gRPC in their projects and they had the same problem. 

Taehyun Park

unread,
May 25, 2016, 8:39:09 PM5/25/16
to play-framework
Netty 4.1.0.Final has been released. It would be great if someone starts to work on upgrading netty to 4.1 in 2.6.x.

Nico Huysamen

unread,
May 26, 2016, 12:51:40 AM5/26/16
to play-framework
+1 for this.  We also want to use gRPC but unable to.  The closest we get is to use the OkHttp client versions of gRPC in Play, but even then there are packages you have to exclude and who knows when something might go wrong.

Greg Methvin

unread,
May 26, 2016, 2:10:49 AM5/26/16
to play-framework
The problem is that Netty 4.1 is not fully backward compatible with 4.0. We can recompile Play 2.5 against Netty 4.1, but we don't know if that will cause issues with Play apps, modules, or other libraries used by Play applications that are based on Netty 4.0. We generally do not like to break binary compatibility in a minor version (note: Play versions are epoch.major.minor) without a good reason.

That said, it should be possible to create a fork of play-netty-server that uses netty 4.1, and use that with Play 2.5 without changing any of the other Play dependencies. We'll need to do the upgrade for Play 2.6 anyway, so the best route would probably be to submit a PR to master with the changes first, then create a custom Netty server project based on that to use with Play 2.5.


For more options, visit https://groups.google.com/d/optout.

Christian Schmitt

unread,
May 26, 2016, 2:58:34 AM5/26/16
to play-framework
can you even use the newest gRPC? Currently I tought that there is no sbt plugin available that generates the newest protobuf stuff

Taehyun Park

unread,
May 26, 2016, 9:40:04 PM5/26/16
to play-framework
You are right there is no sbt plugin available at the moment so I am using a gradle to generate protos. I was going to try use Play with gradle but I didn't have time so that was my short-term solution to use grpc in Play.

Christian Schmitt

unread,
May 27, 2016, 6:53:51 AM5/27/16
to play-framework
Actually Netty 4.1 was released. And as far as I know you coud just "use" netty 4.1 instead of Netty 4.0 I will try to test Play against it, since we could actually make use of the non blocking dns resolver.

Christian Schmitt

unread,
May 27, 2016, 10:20:18 AM5/27/16
to play-framework
Actually if you use my changes for netty-reactive-streams (https://github.com/typesafehub/netty-reactive-streams/pull/17) (PR only fails on travis) than you could use Play 2.5 with netty 4.1 (except when you use play-ws) and you can't run unit tests since integration tests are based on play-ws which uses AHC as a client which has way more incompabilities as the server side.

Taehyun Park

unread,
May 29, 2016, 8:12:48 PM5/29/16
to play-framework
This is awesome!

Christian Schmitt

unread,
Jun 3, 2016, 1:20:38 PM6/3/16
to play-framework
on and actually I would guide you to use thrift on top of play via Http. I will publish a plugin soon, for the server side, but it's actually way simpler to do at the moment and integrates well into plays routing.
Reply all
Reply to author
Forward
0 new messages