github playframework/playframework 3.0.2
Play 3.0.2

latest releases: 3.0.5, 2.9.5, 3.0.4...
8 months ago

The Play Team is pleased to announce the release of Play 3.0.2! 🎉

📗 About this Release

This patch release addresses several bugs and introduces minor enhancements that may benefit you. We strongly recommend upgrading at your earliest convenience.

If you're considering upgrading to Play 3, please check the Play 3 release announcement for highlights and further details on how to migrate.

Noteworthy Pull Requests

  • With this release, we are disabling HTTP pipelining in the Play Pekko HTTP backend. HTTP pipelining has not been thoroughly tested within Pekko HTTP and was already disabled in Pekko HTTP itself some time ago. Beyond benchmarking purposes, it is not recommended for practical use, and there is minimal actual usage from common client libraries in their default settings (web browsers do not support it anymore). Furthermore, having HTTP pipelining enabled could lead to Play unexpectedly canceling POST requests with large bodies.
    • #12397 Disable HTTP pipelining by @mkurz
    • #12351 Requests with Large POST Body Immediately Goes into Delay Cancellation Right After the Server Received the Request by @raphaelNguyen
  • Resolved an issue that could result in the loss of result attributes:
  • Netty native transports under Linux (enabled with play.server.netty.transport = "native") now support AArch64 and RISC-V out of the box in Play:
    • #12405 Make Netty native transport work on Linux AArch64 and RISC-V (besides x86-64) by @mkurz
  • Play and Twirl are now compatible with Scala 3.4.0. However, it's important to note that Scala 3.4.0 is not a Long-Term Support (LTS) release, and Play officially supports only Scala LTS versions (currently Scala 3.3). This compatibility is provided as a best effort. Consequently, if you choose to upgrade beyond Scala 3.3, you do so at your own risk, and you should not expect support for issues that may arise.
  • If you are using Bower WebJars you will now see deprecation warnings. More details:
  • You now have the option to disable the generation of JavaScript (reverse) routers if you do not utilize them, potentially enhancing the performance of your build:
  • This release includes numerous dependency upgrades, notably:
  • Last but not least, over the past weeks (indeed, months), efforts have been made to transition Play and all its dependencies away from the deprecated (and read-only) repo.typesafe.com and repo.scala-sbt.org repositories. As a result, with this release, all dependencies (including those for testing) are now hosted exclusively on Maven Central. This change ensures that even if one of the deprecated repositories were to become unavailable (as has happened in the past), your projects would not be affected. Moreover, this move allows for the possibility that, 15 years from now, you could still download the Play 3.0.2+ source code and, with just Java and sbt installed, rebuild Play from the sources (assuming Maven Central is still operational, which is more likely). While this may seem a bit far-fetched, we occasionally receive reports from users attempting to rebuild an ancient Play release but are unable to do so because they cannot retrieve all the necessary dependencies.

Full Changelog

Following pull requests got merged for this release:

For more details see the full list of changes and the 3.0.2 milestone.

❤️ Thanks to our premium sponsors!

If you find this OSS project useful for work, please consider asking your company to support it by becoming a sponsor.
You can also individually sponsor the project by becoming a backer.

🙇 Thanks to our contributors

Finally, thanks to the community for their help with detailed bug reports, discussions about new features and pull request reviews. This project is only possible due to the help we had from amazing contributors.
Special thanks to all code contributors who helped with this particular release (they are listed below)!

Don't miss a new playframework release

NewReleases is sending notifications on new releases.