phoenix changelog


Hey there, code wizards! 🌟 We've been brewing some magical updates to make your development journey even more enchanting. Here's what's new in our magical code kingdom:

  • New Feature: Ecto 3.13 Powers Unleashed! πŸš€
    We've harnessed the new features of Ecto 3.13, introducing the mighty Repo.transact function and embracing tuples for a smoother, more powerful database transaction experience. This update sprinkles magic across templates, guides, and integration testsβ€”making your code structure more efficient and maintainable.

  • New Feature: Railway Deployment Links Added! πŸš‚
    All aboard! We've added shiny new reference links for deploying your Phoenix applications on Railway. Whether you're using the standard guide or the Distillery-specific one, we've got you covered with clear paths to deployment success.

  • Improvement: LiveView Level Up to 1.1! πŸŽ‰
    Our LiveView framework just got a power-up to version 1.1! With new TypeScript configurations, JavaScript and CSS updates, and dependency changes, your development experience will be as smooth as a wizard's cloak. We've also introduced a new lazy_html dependency and bid farewell to floki, making our codebase more magical than ever.

  • Improvement: Security Documentation Spruced Up! πŸ”’
    Our security documentation got a glow-up! With improved formatting, a consolidated EEF page, and a handy footer for navigation, you'll find it easier than ever to keep your projects safe and sound.

  • Improvement: Channel Docs with a Twist! πŸ“š
    We've updated our channel documentation to clear up confusion about message delivery. With a new example from the Elixir forums, you'll be catching up on missed messages like a pro. Say goodbye to outdated references and hello to clarity!

  • New Feature: Dependabot Gets NPM Savvy! πŸ€–
    We've set up Dependabot to keep an eye on our NPM dependencies, ensuring they're always up-to-date. This automation wizardry means less time worrying about maintenance and more time casting spells (or writing code)!

  • Chore: Git Auto-Commit Action Bumped to 6.0.1! πŸ”„
    We've updated our git-auto-commit-action to the latest and greatest version. This update ensures our GitHub actions are running smoothly and efficiently, keeping our repository in tip-top shape.

With these updates, your coding journey will be more magical and efficient. Happy coding! πŸ§™β€β™‚οΈβœ¨

Included Commits

2025-06-13T12:08:41 See commit

The commit updates the documentation for the Phoenix framework's channels, specifically addressing confusion arising from references to an outdated repository that does not utilize the params function. The author notes that Phoenix's behavior regarding message delivery has changed over time, and aims to clarify this in the documentation. To enhance understanding, the commit includes a straightforward example demonstrating how to implement a client-side mechanism for tracking the last seen message, which allows clients to catch up on missed messages after reconnecting.

In the modified section of channels.md, the commit elaborates on the at-most-once message delivery strategy employed by Phoenix and introduces a practical example. This example shows how clients can send their last_seen_id as part of the channel parameters, enabling the server to provide missed messages upon reconnection. The example includes both client-side JavaScript and server-side Elixir code, illustrating how to handle message fetching and rendering effectively. Overall, the changes aim to improve clarity and usability of the documentation for developers working with Phoenix channels.

Files changed

  • guides/real_time/channels.md
2025-06-13T12:28:05 See commit

The commit titled "Setup Dependabot for NPM (#6284)" introduces configuration changes to the Dependabot settings in the .github/dependabot.yml file. It modifies the file to include a new section specifically for maintaining NPM dependencies, ensuring that they are regularly updated.

The changes involve adding a new entry for the NPM package ecosystem, which specifies the root directory for package management and sets the update schedule to weekly. This enhancement aims to automate the dependency management process for NPM, improving the project's overall maintenance and security by keeping dependencies up to date.

Files changed

  • .github/dependabot.yml
2025-06-13T12:49:35 See commit

This commit updates the dependency for the GitHub Action stefanzweifel/git-auto-commit-action from version 5.2.0 to 6.0.1. The change is part of a routine maintenance effort to ensure that the project utilizes the latest version of this action, which is responsible for automatically committing changes to a Git repository. The update is classified as a major version change, as indicated by the semantic versioning (semver) update type.

In the modified workflow file .github/workflows/assets.yml, the specific line that references the previous version of the action has been updated to point to the new version. This change includes minor modifications in the code, specifically in the section where the action is invoked to push updated assets with a commit message. The commit was signed off by the dependabot bot, indicating it was likely generated automatically as part of a dependency management process.

Files changed

  • .github/workflows/assets.yml
2025-06-16T16:34:58 See commit

This commit introduces the first draft of a security documentation file, specifically located in guides/security.md. The update includes enhancements in formatting to improve readability and organization. Additionally, the commit features a consolidation of the EEF page and the addition of a footer for better navigation.

The commit also reflects collaborative efforts, with contributions from Steffen Deusch, who provided suggestions during the code review process. Other modified files include guides/introduction/community.md and mix.exs, indicating a broader scope of changes beyond just the security documentation.

Files changed

  • guides/introduction/community.md
  • guides/security.md
  • mix.exs
2025-06-18T09:15:51 See commit

This commit adds reference links for deploying Phoenix applications on Railway to the deployment guide. Specifically, it updates the guides/deployment/deployment.md file, including a new section that highlights Railway's support for Phoenix applications, alongside existing mentions of Render.

The new additions include a standard guide for deploying with Railway and a specific guide for using Distillery, enhancing the resources available for developers looking to deploy their applications on this platform. This update aims to provide clearer guidance and options for users interested in utilizing Railway for their Phoenix application deployments.

Files changed

  • guides/deployment/deployment.md
2025-06-18T10:31:22 See commit

This commit updates the LiveView framework to version 1.1, making several modifications across various files in the project. Key changes include the addition of a new tsconfig.json for TypeScript configuration in the assets, updates to JavaScript and CSS files to accommodate the new version, and adjustments to the mix.exs files to reflect the updated dependencies, specifically changing the version of phoenix_live_view from 1.0.13 to 1.1.0-rc.0. The commit also introduces a new dependency, lazy_html, while removing the previous dependency on floki.

Additional enhancements include modifications to the way hooks are imported and the configuration of esbuild to include aliasing, which improves module resolution. The commit also includes updates to test files to ensure compatibility with the new LiveView version and integration tests that reflect the changes made in the asset files. These updates aim to provide developers with improved functionality and a more streamlined development experience when using LiveView in their applications.

Files changed

  • installer/lib/phx_new/single.ex
  • installer/templates/phx_assets/app.css
  • installer/templates/phx_assets/app.js
  • installer/templates/phx_assets/tsconfig.json
  • installer/templates/phx_single/config/config.exs
  • installer/templates/phx_single/mix.exs
  • installer/templates/phx_umbrella/apps/app_name_web/config/config.exs
  • installer/templates/phx_umbrella/apps/app_name_web/mix.exs
  • installer/test/phx_new_test.exs
  • installer/test/phx_new_umbrella_test.exs
  • integration_test/mix.exs
  • integration_test/mix.lock
  • integration_test/test.sh
2025-06-18T16:27:01 See commit

This commit updates the project to leverage new features introduced in Ecto 3.13, specifically incorporating the Repo.transact function and utilizing tuples for improved functionality. The changes span multiple files, including modifications to various templates and configuration files within the project.

Key updates include alterations to guides, installer templates, and integration tests, reflecting a comprehensive integration of the new Ecto features across the codebase. The adjustments aim to enhance database transaction handling and improve code structure, ultimately leading to a more efficient and maintainable application.

Files changed

  • guides/howto/swapping_databases.md
  • installer/templates/phx_single/mix.exs
  • installer/templates/phx_umbrella/apps/app_name/mix.exs
  • integration_test/mix.exs
  • integration_test/mix.lock
  • priv/templates/phx.gen.auth/context_fixtures_functions.ex
  • priv/templates/phx.gen.auth/context_functions.ex
  • priv/templates/phx.gen.auth/session_controller.ex
  • priv/templates/phx.gen.auth/settings_controller.ex
  • priv/templates/phx.gen.auth/settings_live.ex
  • priv/templates/phx.gen.auth/test_cases.exs
  • priv/templates/phx.gen.context/schema_access_scope.ex