Changelog for v1.8
View SourceThis release requires Erlang/OTP 25+.
put_secure_browser_headers
put_secure_browser_headers has been updated to the latest security practices. In particular, it sets the content-security-policy header to "base-uri 'self'; frame-ancestors 'self';" if none is set, restricting embedding of your application and the use of <base> element to same origin respectively. If you expect your application to be embedded by third-parties, you want to consult the documentation.
The headers x-download-options and x-frame-options are no longer set as they have been deprecated by standards.
Deprecations
This release introduces deprecation warnings for several features that have been soft-deprecated in the past.
use Phoenix.Controllermust now specify the:formatsoption, which may be set to an empty list if the formats are not known upfront- The
:namespaceand:put_default_viewsoptions onuse Phoenix.Controllerare deprecated and emit a warning on use - Specifying layouts without modules, such as
put_layout(conn, :print)orput_layout(conn, html: :print)is deprecated - The
:trailing_slashoption inPhoenix.Routerhas been deprecated in favor of usingPhoenix.VerifiedRoutes. The overall usage of helpers will be deprecated in the future
v1.7
The CHANGELOG for v1.7 releases can be found in the v1.7 branch.
1.8.0-rc.0 (2025-04-01) 🚀
- First release candidate!
Enhancements
- [
phx.new] - Extend tailwindcss support with daisyUI for light/dark/system mode support for entire app, including core components - [
phx.new] - Simplify layout handling for new apps. Now those is only a singleroot.html.heexwhich wraps the render pipeline. Other dynamic layouts, likeapp.html.heexare called explicitly as needed within templates as regular function components - [
phx.new,phx.gen.live] - Simplify core components and live generators to more closely match basicphx.gen.htmlcrud. This serves as a better base for seasoned devs to start with, and lessons the amount of code newcomers need to get up to speed with on the basics - [phx.gen.auth] - Introduce Magic Links (passwordless auth)
- [phx.gen.auth] - Introduce the Scopes pattern in Phoenix, designed to make secure data access the default, not something you remember (or forget) to do later.