Play 2.9.2
The Play Team is pleased to announce the release of Play 2.9.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 2.9, please check the Play 2.9 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 Akka HTTP backend. HTTP pipelining has not been thoroughly tested within Akka HTTP and was already disabled in Akka 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: - 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.
- #12284 fix warnings with Scala 3.4. avoid
private[this]
by @xuwei-k - Twirl #737 compiler: account for Scala 2 and 3 differences in generated varargs code by @ahjohannessen
- #12284 fix warnings with Scala 3.4. avoid
- If you are using Bower WebJars you will now see deprecation warnings. More details:
- webjars #2039 Bower Deprecation Plan by @jamesward
- 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:
- #12270 Add option to disable JavaScript routers by @PromanSEW
- This release includes numerous dependency upgrades, notably:
- #12367 netty 4.1.107.Final (was 4.1.104.Final) by @scala-steward
- 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
andrepo.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 2.9.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.- playframework/.github #76 Block deprecated repos in
/etc/hosts
by @mkurz
- playframework/.github #76 Block deprecated repos in
Full Changelog
Following pull requests got merged for this release:
- #12460 [2.9.x] Upgrade sbt-js-engine, sbt-web, webjars-locator by @mkurz
- #12456 [2.9.x] Patch updates (backport #12454) by @scala-steward
- #12443 [2.9.x] Scala 3.3.3 by @mkurz
- #12436 [2.9.x] Update ModuleDirectory.md - Update Silhouette location (backport #12435) by @rorygraves
- #12416 [2.9.x] Twirl 1.6.5 by @mkurz
- #12411 [2.9.x] Add option to disable JavaScript routers (backport #12270) by @PromanSEW
- #12415 [2.9.x] Update ActorModule documentation (backport #12414) by @ndeverge
- #12412 [2.9.x] Fix typo in docs by @mkurz
- #12410 [2.9.x]
TestServer.isRunning
should not throw exception but returnfalse
(backport #12409) by @mkurz - #12408 [2.9.x] Upgrade to latest scala versions (backport #12401) by @mkurz
- #12406 [2.9.x] Make Netty native transport work on Linux
AArch64
andRISC-V
(besidesx86-64
) (backport #12405) by @mkurz - #12404 [2.9.x] Explicitly depend on
netty-reactive-streams-http
transitive dependencies (backport #12403) by @mkurz - #12400 [2.9.x] sbt 1.9.9 (backport #12398) by @mkurz
- #12402 [2.9.x] Fix unapply examples in ScalaForms docs (backport #12279) by @pschichtel
- #12399 [2.9.x] Disable HTTP pipelining (backport #12397) by @mkurz
- #12385 [2.9.x] logback-classic 1.5.0 (was 1.4.14) by @scala-steward
- #12392 [2.9.x] Patch updates by @scala-steward
- #12388 [2.9.x] hibernate-core 6.4.4.Final (was 6.4.1.Final) by @scala-steward
- #12387 [2.9.x] netty-transport-native-epoll 4.1.107.Final (was 4.1.104.Final) by @scala-steward
- #12390 [2.9.x] scalafmt-core 3.8.0 (was 3.7.17) by @scala-steward
- #12395 [2.9.x] Nicer Scala steward title by @mkurz
- #12393 [2.9.x] Fix #8184 Evolutions Fail With a Small Pool (backport #12359) by @reardonj
- #12364 [2.9.x] fix warnings with Scala 3.4. avoid
private[this]
(backport #12284) by @xuwei-k - #12348 [2.9.x] Clean up resolvers (backport #12347) by @mkurz
- #12345 [2.9.x] Upgrade sbt-web plugins (to avoid repo.scala-sbt.org) (backport #12340) by @mkurz
- #12346 [2.9.x] Be more generic about repos (avoid repo.typesafe.com) (backport #12342) by @mkurz
- #12339 [2.9.x]
sbt-akka-version-check
now hosted on maven central by @mkurz - #12337 [2.9.x] Keep attrs when modifying result (backport #12336) by @hertg
- #12326 [2.9.x] Patch updates by @scala-steward
- #12329 [2.9.x] Fix link to Zengularity (backport #12328) by @mkurz
- #12317 [2.9.x] sbt-eclipse 6.2.0 (was 6.0.0) by @scala-steward
- #12325 [2.9.x] sbt-jmh 0.4.7 (was 0.4.6) by @scala-steward
- #12322 [2.9.x] hibernate-core 6.4.1.Final (was 6.3.2.Final) by @scala-steward
- #12289 [2.9.x] Never trigger release process via UI, need to push tag by hand always by @mkurz
- #12288 [2.9.x] Make clear the evolutions page shows a button (backport #12287) by @mkurz
For more details see the full list of changes and the 2.9.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)!