Play 2.6.0 released

The Play team is proud to announce the release of Play 2.6.0. This release adds a number of new features and continues our efforts to make Play more modular, flexible, and secure. It also completes our removal of global state from the core of Play, making it easier to write self-contained Play applications.

What's new?

Some improvements in Play 2.6.0 include:

  • Akka HTTP is now the default server backend. We still will support the Netty server backend but plan to implement most new features on Akka HTTP.
  • Experimental HTTP/2 support on Akka HTTP.
  • No internal use of the global application instance (Play.current). It's now deprecated and possible to disable completely using play.allowGlobalApplication = false.
  • Request attributes for attaching arbitrary typed data to requests.
  • Twirl templates now can have a constructor for passing application dependencies. This allows for injectable templates.
  • Support for SLF4J markers in both the Java and Scala API, and a special security marker for security-related operations.
  • Configuration improvements in the Scala API, using typeclasses for reading arbitrary types, and removal of the Java configuration API in favor of standard Typesafe Config.
  • Support for compile-time dependency injection in Java, allowing you to create a full Play application in Java without Guice or any dependency injection framework. We have an example using Dagger 2.
  • Play JSON is now an independent project, and supports Scala.js.
  • There is now a standalone version of Play WS, and the WS module in Play contains several useful improvements including HTTP caching support.
  • Full support for Scala 2.12.

As usual, you can see the full list of improvements in the release highlights and learn how to migrate from the migration guide. See the full changelog for the complete list of changes.

Play seeds and example projects

To get started, you can use one of the seed projects available from the Play website. There are also a number of more detailed examples, which are also available on GitHub (see the 2.6.x branch on any example repo).

Thanks to our contributors

A special thanks to the many hard-working contributors to this release:

   235    Will Sargent
   209    Greg Methvin
   128    Marcos Pereira
    84    Schmitt Christian
    70    Matthias Kurz
    45    Play Team
    30    Ben McCann
    22    Nafer Sanabria
    17    Christian Schmitt
    14    James Roper
    12    Rich Dougherty
     9    Cédric Chantepie
     8    Johannes Rudolph
     7    Julien Richard-Foy
     7    Dominik Dorn
     5    Konrad `ktoso` Malawski
     5    monkey-mas
     4    Tsuyoshi Yoshizawa
     4    mmizutani
     4    Julian Tescher
     4    kenji yoshida
     4    Kunal Kanojia
     4    Kaz Sera
     4    Wojciech Langiewicz
     4    Severinas Monkevicius
     4    Rajendra prasad Gujja
     3    yuichiro umezawa
     3    Mikołaj Jakubowski
     3    Mike Bryant
     3    Reto Habluetzel
     3    Sushil Kumar
     3    Thomas Grainger
     3    Simon Effing
     3    James Ward
     3    Kyle Valade
     3    Samy Dindane
     3    Jasper Denkers
     3    antego
     2    Grzegorz Slowikowski
     2    Adam Lane
     2    Adam Wiliams
     2    Alex Dupre
     2    Alex Varju
     2    Anand Singh
     2    Arpit Suthar
     2    Ben Flowers
     2    Benoit Louy
     2    Bryan Barkley
     2    Christian Kaps
     2    Dale Wijnand
     2    Damian Ball
     2    David Heidrich
     2    Diego Collarana
     2    Discipe
     2    Dzmitry Rusak
     2    Erwin Oegema
     2    Fatih Ergüven
     2    Francisco Javier Torres
     2    Abdul Rauf
     2    Henry Cleland
     2    Jaroslaw Kacerka
     2    Jason Zavaglia
     2    Jonas Anso
     2    João Gonçalves
     2    Karel Čemus
     2    Koen De Groote
     2    Kristijan Bambir
     2    Kyle
     2    Levente Holló
     2    Liu Tao
     2    Lukasz Tymoszczuk
     2    Mariot Chauvin
     2    Markus Hauck
     2    Mathias Kub
     2    Maxence Warzecha
     2    Mike Mazur
     2    Mike Slinn
     2    Niklas Lochschmidt
     2    Rene Weber
     2    René Vangsgaard
     2    Richard Lichlyter-Klein
     2    Santiago Mera
     2    Satendra kumar
     2    Shenker93
     2    Shunsuke Tadokoro
     2    Tan Wen Jun
     2    Thomas Toye
     2    Viktor Klang (√)
     2    Vladimir Samoylov
     2    Yu-Fan Tung
     2    Yusuke Izawa
     2    benoj
     2    boosh
     2    cchantep
     2    chainkite
     2    el-dom
     2    fishjd
     2    jxtps
     2    matsu-chara
     2    maxmc
     2    petermullins
     2    prithivirajan
     2    virusdave
     1    Gregg Hernandez
     1    Sakib Hadžiavdić
     1    Florian Meriaux
     1    hktonylee
     1    takirohit
     1    Ethan
     1    Sean Löfgren
     1    Seth Tisue
     1    Ender Tunç
     1    Ang Hao Yang
     1    Shifeng Zhang
     1    Shisei Hanai
     1    velabits
     1    Emma Burrows
     1    Earl St Sauver
     1    max5599
     1    Thiago Arrais
     1    Dick Wall
     1    zhangshifeng
     1    Daniel Obasi
     1    Uxio
     1    Uxío
     1    Valeryi Baibossynov
     1    Valy
     1    Andriy Kuba
     1    Vincent Munier
     1    Alexandre Dufournet
     1    Konrad Malawski
     1    Wai-chuen
     1    Katou Akihiro
     1    Claudio Bley
     1    Jørn Ølmheim
     1    Chafik
     1    morellik
     1    mufeng
     1    Josh Soref
     1    Zava
     1    Mark Beeson
     1    Mark Siebert
     1    adrianhurt
     1    Martin Pallmann
     1    Byron Weber Becker
     1    Mathieu Pichette
     1    Josep Prat
     1    Matthias Lüneberg
     1    nafg
     1    Jentsch
     1    netroby
     1    nndeeb
     1    Jannis Bloemendal
     1    J. Miguel Mendez
     1    Nathaniel Fischer
     1    Nick
     1    Nick Zahn
     1    Nicolas Rémond
     1    Alexandr Radchykov
     1    Patrick Laxton
     1    Peter Perhac
     1    Ivan Yurchenko
     1    Harald Gliebe
     1    yutayokoi
     1    rmcloughlin
     1    Han van Venrooij
     1    hagl

Greg Methvin

comments powered by Disqus