Download Latest Version Play 3.0.12 source code.zip (5.2 MB) Google Add to Preferred Sources
Home / 2.9.12
Name Modified Size InfoDownloads / Week
Parent folder
Play 2.9.12 source code.tar.gz 2026-09-30 3.5 MB
Play 2.9.12 source code.zip 2026-09-30 5.3 MB
README.md 2026-09-30 7.9 kB
Totals: 3 Items   8.8 MB 0

We're excited to announce the release of Play 2.9.12! 🚀

:green_book: About this Release

This release upgrades Netty to address a large number of reported security vulnerabilities (CVEs), fixes a bug in the reverse router, improves Scala 3 support in routes files and - as always - updates dependencies. 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. Many projects have already smoothly upgraded to Play 2.9.

Noteworthy Pull Requests

  • Netty got upgraded to 4.1.138.Final, which fixes many CVEs (see the Netty security advisories): [#13953], [#13978], [#14090], [#14172], [#14250] by @scala-steward
  • [#14315] [2.9.x] Fix reverse router for OptionalInt/Long/Double query params (backport [#14252]) by @arimu1 Reverse routes with java.util.OptionalInt, OptionalLong or OptionalDouble query parameters dropped the parameter name and produced invalid URLs (e.g. ?111 instead of ?key=111).
  • [#13973] [2.9.x] Support Scala 3-style wildcard type arguments in routes files (backport [#13972]) by @jadenPete In addition to _, routes files now also accept Scala 3's ? syntax for wildcard type arguments.

Following pull requests got merged for this release:

  • [#14315] [2.9.x] Fix reverse router for OptionalInt/Long/Double query params (backport [#14252]) by @arimu1
  • [#14309] [2.9.x] Pin lz4-java by @mkurz
  • [#14296] [2.9.x] Patch updates by @scala-steward
  • [#14281] [2.9.x] sbt-buildinfo 0.13.2 (was 0.13.1) by @scala-steward
  • [#14284] [2.9.x] hibernate-core 6.6.58.Final (was 6.6.56.Final) by @scala-steward
  • [#14285] [2.9.x] Patch updates by @scala-steward
  • [#14283] [2.9.x] sbt-mima-plugin 1.2.1 (was 1.1.6) by @scala-steward
  • [#14250] [2.9.x] netty-codec-http, netty-handler, ... 4.1.138.Final (was 4.1.137.Final) by @scala-steward
  • [#14237] [2.9.x] Patch updates by @scala-steward
  • [#14234] [2.9.x] h2 2.5.250 (was 2.4.240) by @scala-steward
  • [#14216] [2.9.x] hibernate-core 6.6.56.Final (was 6.6.55.Final) by @scala-steward
  • [#14209] [2.9.x] Patch updates by @scala-steward
  • [#14208] [2.9.x] sbt, sbt-dependency-tree, ... 1.13.0 (was 1.12.15) by @scala-steward
  • [#14206] [2.9.x] Patch updates by @scala-steward
  • [#14202] [2.9.x] Patch updates by @scala-steward
  • [#14184] [2.9.x] Patch updates by @scala-steward
  • [#14161] [2.9.x] sbt-java-formatter 0.13.1 (was 0.12.0) by @scala-steward
  • [#14173] [2.9.x] Patch updates by @scala-steward
  • [#14172] [2.9.x] netty-codec-http, netty-handler, ... 4.1.137.Final (was 4.1.136.Final) by @scala-steward
  • [#14163] [2.9.x] hibernate-core 6.6.55.Final (was 6.6.54.Final) by @scala-steward
  • [#14162] [2.9.x] sbt-bill-of-materials 1.1.1 (was 1.0.2) by @scala-steward
  • [#14147] [2.9.x] Patch updates by @scala-steward
  • [#14146] [2.9.x] logback-classic 1.6.1 (was 1.5.38) by @scala-steward
  • [#14106] [2.9.x] Patch updates by @scala-steward
  • [#14063] [2.9.x] Patch updates by @scala-steward
  • [#14090] [2.9.x] netty-codec-http, netty-handler, ... 4.1.136.Final (was 4.1.135.Final) by @scala-steward
  • [#14067] [2.9.x] sbt-ci-release 0.12.0 by @mkurz
  • [#14047] [2.9.x] hibernate-core 6.6.54.Final (was 6.6.53.Final) by @scala-steward
  • [#14044] [2.9.x] Patch updates by @scala-steward
  • [#14041] [2.9.x] Patch updates by @scala-steward
  • [#14034] [2.9.x] Bump actions/checkout from 6 to 7 by @dependabot[bot]
  • [#14030] [2.9.x] Patch updates by @scala-steward
  • [#14022] [2.9.x] Pin jQuery by @mkurz
  • [#14021] [2.9.x] Pin sbt 1 by @mkurz
  • [#14016] [2.9.x] Patch updates by @scala-steward
  • [#14003] [2.9.x] Patch updates by @scala-steward
  • [#13999] [2.9.x] Patch updates by @scala-steward
  • [#13991] [2.9.x] hibernate-core 6.6.53.Final (was 6.6.52.Final) by @scala-steward
  • [#13979] [2.9.x] Patch updates by @scala-steward
  • [#13978] [2.9.x] netty-codec-http, netty-handler, ... 4.1.135.Final (was 4.1.134.Final) by @scala-steward
  • [#13973] [2.9.x] Support Scala 3-style wildcard type arguments in routes files (backport [#13972]) by @jadenPete
  • [#13970] [2.9.x] Patch updates by @scala-steward
  • [#13964] [2.9.x] hibernate-core 6.6.52.Final (was 6.6.51.Final) by @scala-steward
  • [#13961] [2.9.x] Patch updates by @scala-steward
  • [#13956] [2.9.x] hibernate-core 6.6.51.Final (was 6.6.50.Final) by @scala-steward
  • [#13953] [2.9.x] netty-codec-http, netty-handler, ... 4.1.134.Final (was 4.1.133.Final) by @scala-steward

For more details see the full list of changes.

:heart: 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.

:bow: 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)!

Source: README.md, updated 2026-09-30