phoenix changelog


Welcome to another round of updates! We've been busy bees ๐Ÿ making improvements, adding new features, and squashing bugs to make your experience better than ever. Check out what's new and exciting:

New Feature: Clustering Section Added We've introduced a brand new section on clustering in the deployment guides for Phoenix applications. This feature is especially handy for those deploying on platforms like Fly.io. The guide walks you through setting up your environment variables, helping your Elixir and Erlang VM nodes chat like old friends. Say hello to better scalability and performance in distributed environments! ๐ŸŒ

Improvement: SSL Before Migration We've jazzed up the release process by ensuring that SSL is loaded before any database migrations kick-off. By starting the SSL application first, we're smoothing out potential hiccups with database connections, especially on platforms that insist on SSL. Your app's release process just got a whole lot more reliable! ๐Ÿ”

Improvement: Conditional Subscriptions in LiveView We've made LiveView smarter by ensuring it only subscribes to topics when the socket is connected. This tweak helps improve performance and reduces unnecessary server load. Your real-time web applications will thank you for this boost in efficiency! โšก

Bugfix: Server-Error CSS Selector We fixed a pesky CSS selector issue for server errors. Now, when things go sideways, the error messages will display correctly, ensuring a smoother user experience. No more hiding those server error messages under the wrong selector! ๐Ÿšจ

Improvement: Typo Fix and More We fixed a minor typo in the CHANGELOG.md file, but that's not all! We've also enhanced support for Tailwind CSS with daisyUI and introduced features like magic links for passwordless authentication. Plus, we've streamlined layout handling for new apps, making life easier for both newcomers and seasoned developers. โœจ

That's a wrap for now! Dive into these updates and enjoy a smoother, more powerful Phoenix experience. Until next time, happy coding! ๐ŸŽ‰


Hey there, fabulous developers! ๐ŸŽ‰ We've been busy bees making sure your Phoenix framework experience is smoother and more delightful than ever. Check out the awesome updates we've rolled out:

  • Improvement: We've jazzed up the login templates in the Phoenix authentication generator! Not only did we sprinkle some formatting magic, but we also made the alert section more informative and prominent. Now you can easily navigate to the mailbox page and enjoy a clearer login experience. โœจ

  • Improvement: Scoped resources just got a performance boost! We've added an index to the migration files, making your database lookups faster than a cheetah on roller skates. ๐Ÿ›ผ This change ensures your queries are zippy and efficient.

  • Improvement: Say hello to data-phx-session as the new selector for LiveView containers! This update ensures your LiveView components are stylish and functional, keeping everything neat and tidy. ๐ŸŽจ

  • New Feature: Want to switch up your icon game? We've got you covered! Our new asset management guide section walks you through using alternative icon libraries like Remix Icon. It's all about flexibility and customization, so you can make your app truly yours. ๐Ÿ–Œ๏ธ

  • Bugfix: We've fixed those pesky Tailwind custom variants for loading classes. Now your phx-click-loading, phx-submit-loading, and phx-change-loading classes will work like a charm, following Tailwind's best practices. ๐Ÿš€

  • Bugfix: No more crashes on the :show page when receiving PubSub broadcasts! We've added a handle_info function to keep your socket steady and your app running smoothly, even when items are created, updated, or deleted in the background. ๐Ÿ› ๏ธ

Keep on coding and enjoy these snazzy updates! ๐Ÿ’ปโœจ


Here's the scoop on the latest updates and enhancements! We've been hard at work making things better, faster, and more fun. Check out the highlights of what's new and improved in our latest release:

  • New Feature Alert ๐Ÿš€: We've added a shiny new method attribute to the global attributes of the button component. This means you can now specify HTTP methods like GET or POST for button actions, making your buttons even more powerful and flexible in your Phoenix apps.

  • Session Management Overhaul ๐Ÿ”„: We've jazzed up the session management and authentication functions, especially for token reissuing. Say goodbye to session fixation attacks and hello to a smoother, more secure user experience. Plus, we've tidied up the docs for future clarity.

  • Sudo Mode Gets a Boost ๐Ÿ”: No more session resets when re-authenticating for sudo-mode protected pages! We've ensured your CSRF token stays intact, keeping your in-progress forms valid and your experience seamless.

  • Token Lifetimes Tweaked โฐ: Tokens now have a shorter, more secure lifespanโ€”down from 60 days to 14. Plus, we've got a nifty mechanism to reissue them periodically, ensuring your authentication is always up-to-date.

  • Umbrella Project Fixes โ˜‚๏ธ: We've patched up some pesky issues in umbrella project structures. Now your heroicons and code reloading should work like a charm, making development smoother than ever.

  • OTP 28 Compatibility ๐Ÿ› ๏ธ: We've moved regexes out of module attributes in Phoenix.Digester to ensure compatibility with OTP 28. This tweak keeps everything running smoothly without a hitch.

  • Documentation Cleanup ๐Ÿ“: Corrected the module name in App.Accounts.Scope documentation to avoid any confusion. Now, it accurately reflects its purpose, making things crystal clear.

Enjoy these updates and keep building awesome stuff! ๐ŸŽ‰


Here's a delightful rundown of the latest updates to the Phoenix framework. From new features to crucial bug fixes, this release is packed with goodies for developers. Let's dive in! ๐Ÿš€

New feature: Tailwind CSS with daisyUI
Say hello to extended Tailwind CSS support featuring daisyUI! This update brings light/dark/system mode options, giving your app a stylish makeover with ease. ๐ŸŒˆ

New feature: Simplified Layout Structure
We've streamlined the layout structure for new applications, consolidating everything into a single root.html.heex file. Less clutter, more clarity! ๐Ÿงน

New feature: Passwordless Authentication
Introducing passwordless authentication via Magic Links! Say goodbye to forgotten passwords and hello to seamless user experiences. ๐Ÿ”ฎโœจ

New feature: Scopes Pattern
Secure data access just got easier with the introduction of the Scopes pattern. Keep your data safe and sound with this nifty enhancement. ๐Ÿ”’

New feature: Navigation Support for Buttons
Buttons just got a whole lot smarter! With added navigation support, they can now function as clickable links. Talk about versatility! ๐Ÿ–ฑ๏ธ

Improvement: LiveView Guide
A comprehensive guide to Phoenix LiveView is now available, making it easier than ever to create interactive, real-time apps. Learn the ropes and get your app buzzing with life! โšก

Improvement: Inline Theme Switcher
We've inlined the theme switcher script, making it easier to manage and understand. Switch themes with style and simplicity! ๐ŸŽจ

Bugfix: Schema Name Flexibility
Fixed issues when using a schema name other than User. The authentication module now adapts smoothly to different schema configurations. Flexibility FTW! ๐Ÿคธ

Bugfix: Compile Alias Conflict
Removed the pesky compile alias to avoid conflicts with archives at runtime. Enjoy a smoother build and execution process. ๐Ÿ› ๏ธ

Bugfix: Integration Tests
Integration tests are now more reliable, thanks to updates in authentication-related files and dependency management. Test away with confidence! ๐Ÿงช

These updates are just the beginning. Dive in, explore, and enjoy the enhanced Phoenix experience! ๐ŸŒŸ


Here's the latest scoop on what's been cooking in our codebase! We've been busy adding new features, making improvements, and squashing bugs to make everything run smoother than a cat on a freshly polished floor. Check out the highlights below! ๐Ÿพโœจ

  • New feature: We rolled out a shiny new module, PlugRouterWithVerifiedRoutes, which implements the Phoenix.VerifiedRoutes behavior. It comes with a simple HTTP GET route at "/foo" responding with a 200 status and "ok" text. Plus, it includes implementations for formatted_routes/1 and verified_route?/2 to keep your routes in check. ๐Ÿš€

  • Improvement: Our guides got a major facelift! We've revamped the documentation, adding new sections on data modeling, contexts, and FAQs. Existing guides like directory structure and Ecto have been polished for clarity. Now, navigating our docs is as smooth as butter! ๐Ÿ“šโœจ

  • Improvement: Say hello to the unminified daisyUI! We've updated our vendored directory with the unminified version from 5.0.8, making it easier to tweak and debug. The main.css and JavaScript updates bring a fresh breath of simplicity and style to your UI components. ๐ŸŒผ๐ŸŽจ

  • Improvement: To avoid confusion, we've added a requirement for at least one attribute when using phx.gen.html and phx.gen.live generators. This ensures you won't accidentally create incomplete implementations. Now, every generation is a complete package! ๐ŸŽ

  • Bugfix: We corrected an oopsie in the changelog! It mistakenly stated that layouts with modules were deprecated, but it's actually the ones without modules. Now, the changelog sings the right tune. ๐ŸŽถ

  • Bugfix: Our SQLite3 integration tests are back on track! We fixed formatting issues in application.ex files and updated test cases to align with the SQLite3 adapter. Everything's running like a well-oiled machine! ๐Ÿ› ๏ธ

  • Bugfix: The recreate_default_css script now correctly references main.css instead of the outdated app.css. This fix prevents any hiccups in CSS generation, keeping your styles fresh and consistent! ๐ŸŽจ

  • Chore: We've officially deprecated some soft-deprecated controller entry points. The codebase and tests have been updated to reflect these changes, nudging developers towards best practices. Out with the old, in with the new! ๐Ÿ”„

We're all about making things better, faster, and more fun. Keep your eyes peeled for more exciting updates! ๐ŸŽ‰


Welcome to the latest update! We've got some exciting new features, improvements, and a few bug fixes to make your experience even better. Let's dive into what's new and shiny! ๐ŸŽ‰

  • New Feature: Enhanced Routing with Phoenix.VerifiedRoutes ๐Ÿš€
    We've introduced the Phoenix.VerifiedRoutes behavior, which supercharges routing in Phoenix apps. This allows custom plugs like AshJsonApiRouter to automatically expand their routes with mix phx.routes, supporting verified routes at compile time. This makes it a breeze to manage and display complex routes, ensuring your application's routing is both flexible and robust.

  • New Feature: Route Prefix Option for Scopes ๐Ÿ›ฃ๏ธ
    Say hello to the new route_prefix option for scopes! This nifty feature helps you manage routes more effectively by adding test_context_scope only when a route prefix is specified. It also improves scope assignment messages and optimizes broadcast generation, making your routing system more efficient and easier to handle.

  • Improvement: Case-Insensitive Token Type ๐Ÿ”‘
    We've aligned with HTTP/1.1 Authentication specs by introducing support for case-insensitive token types. Now, the "Bearer" token in authorization headers can be recognized regardless of its casing, making your authentication process more robust and compliant.

  • Improvement: Tailwind CSS Update to v4 ๐ŸŽจ
    We've updated our Tailwind CSS framework to version 4.0.9, ensuring compatibility with the Heroicons plugin. This update includes new utilities and adjustments to the brand color, enhancing your project's styling capabilities with fresh, modern features.

  • New Feature: Automated Asset Updates ๐Ÿ”„
    We've rolled out an automated workflow for updating assets, targeting the main and versioned branches. This GitHub Actions workflow ensures that your latest assets are always up-to-date without manual intervention, streamlining asset management and improving build efficiency.

  • Improvement: Console Formatter Optimization ๐Ÿ–ฅ๏ธ
    By using iodata for binary formatting in the Phoenix.Router.ConsoleFormatter, we've optimized console output performance and readability. This change streamlines helper printing and reduces code complexity, ensuring a smooth and efficient developer experience.

  • Bugfix: Subprotocols Without AuthToken ๐Ÿž
    We've tackled issues with subprotocols missing an authentication token in the Phoenix framework's JavaScript implementation. The LongPoll class now handles undefined or empty protocols gracefully, enhancing error handling and connection flexibility.

  • Chore: Reorganize CSS Script ๐Ÿ—‚๏ธ
    We've moved the recreate_default_css.exs script to the installer folder, tidying up the project structure. This reorganization ensures users are directed to the correct location for recreating default CSS files, keeping things neat and organized.

We hope these updates make your development journey smoother and more enjoyable. Happy coding! ๐ŸŽ‰


Hey there, Phoenix enthusiasts! We've got some exciting updates to share with you that are sure to make your development experience even smoother and more secure. Let's dive into the latest improvements to our documentation, which are all about making authentication and authorization in Phoenix applications as clear and effective as possible. ๐Ÿš€

  • Improvement: Updates to Scope Guide
    We've revamped the scope guide to give it a fresh new look! We've swapped out those old "Demo" names for the snazzier "MyApp" to keep things consistent and crystal clear. The guide now puts a spotlight on the importance of scopes in managing user sessions and permissions, which are crucial for keeping your app's data access on lockdown. Plus, we've added some nifty code snippets to show you how to set up scopes and manage user sessions like a pro. ๐Ÿ›ก๏ธ

  • Improvement: Updates to Auth Section
    Say hello to the new "Introduction to Auth" guide! This gem breaks down the basics of authentication and authorization in Phoenix, complete with handy links to resources like the mix phx.gen.auth generator. We've also expanded the guide on mix_phx_gen_auth to include all the juicy details on features like user registration and magic link logins. And don't worry, we've reorganized things a bit to make the whole auth journey more intuitive for you. ๐Ÿง™โ€โ™‚๏ธ

  • Improvement: Update API Auth Guide
    The API authentication guide got a makeover to keep up with the new phx.gen.auth and scopes features. This update makes sure you're armed with the latest and greatest in authentication practices, so you can integrate these new functionalities with ease. Say goodbye to confusion and hello to a seamless user experience! ๐Ÿ”‘

We hope these updates make your Phoenix development journey a little brighter and a whole lot easier. Happy coding! ๐ŸŒŸ


Hey there, code wizards! We've got some exciting updates to share that will make your development experience even more magical. Check out the latest changes and enhancements below. ๐Ÿš€

  • New feature: WebSocket Header Magic! โœจ
    We've sprinkled some extra magic on WebSocket connections by allowing you to pass through those sec-websocket-* headers. Now you can access all headers prefixed with "sec-websocket-" during WebSocket connections using the :sec_websocket_headers key in the :connect-info. This update ensures your WebSocket handling is top-notch, flexible, and in line with the latest standards. Thanks to Mark Felder for co-authoring this awesome feature!

  • New feature: npm + Docker = โค๏ธ
    Deploying with phx.gen.release --docker just got easier! We've added a new section in the docs to guide you on using npm when deploying your Phoenix apps. Learn how to tweak your Dockerfile to include third-party JavaScript packages, ensuring all your assets are right where you need them during the build process. Say goodbye to dependency headaches in Docker environments!

  • Improvement: Streamlined Asset Management ๐Ÿ› ๏ธ
    We've removed the need to precompile the castore dependency, paving the way for future Erlang/OTP 28 updates. Plus, weโ€™ve updated esbuild and tailwind dependencies to their latest versions in mix.exs, ensuring your project is running smoothly with the freshest tools in town.

  • Chore: Dependency Updates for Integration Tests ๐Ÿ”„
    Keeping things fresh, we've upgraded the esbuild, tailwind, and decimal libraries in our integration tests. These updates are part of our ongoing quest to ensure everything runs like a well-oiled machine, with improved performance, security, and compatibility.

Enjoy these enhancements and keep rocking that code! ๐ŸŽธ


Hey there, Phoenix enthusiasts! We've got some exciting updates for you, so grab your favorite beverage and let's dive into the latest changes that are sure to make your development experience even more delightful! ๐ŸŽ‰

  • New Feature: LiveView Testing Gets a Boost! ๐Ÿš€
    We've added a whole bunch of new macros to the locals_without_parens config, specifically for LiveView testing. Say hello to 18 new assert_* and refute_* macros, making your test assertions cleaner and more intuitive. No more pesky parentheses getting in the way of your LiveView awesomeness!

  • Improvement: Long-Poll Transport Documentation Upgrade! ๐Ÿ“š
    We've spiced up the Phoenix Deployment documentation with a warning about the limitations of long-polling transport in clustered environments. Now, you'll find a detailed list of requirements to ensure smooth long-polling operations, like using Erlang VM's clustering or opting for a Redis adapter. Plus, we've rearranged the section for easier access, thanks to Josรฉ Valim's suggestion.

  • Improvement: phx.digest.clean Task Made Easier! ๐Ÿ”„
    Tired of running into issues when executing phx.digest.clean multiple times? Fret no more! We've enhanced the task so you can run it as often as needed without any hiccups. Your development workflow just got a whole lot smoother!

We hope these updates make your coding journey with Phoenix even more enjoyable. Keep on building amazing things, and happy coding! ๐Ÿ’ปโœจ


Welcome to the latest and greatest in our coding universe! ๐ŸŒŸ We've been busy bees tidying up our Elixir codebase, ensuring it's as fresh and modern as your favorite meme. Here's what's new:

  • Improvement: We've waved goodbye to the outdated %Project{} syntax and embraced the sleek and shiny %{} format, in line with Elixir v1.19+. This makeover spans across files like ecto.ex, generator.ex, mailer.ex, single.ex, umbrella.ex, and web.ex. It's all about keeping things neat, tidy, and future-proof!

These changes aren't just about looking pretty; they're crucial for keeping our code in tip-top shape, ensuring compatibility and readability for everyone in the development team. It's like a spa day for our beloved codebase! ๐Ÿ’…โœจ


Hey there, fellow coders! We've been hard at work sprucing things up, and we have some exciting updates to share with you. Dive into the latest changes below and see how they can supercharge your development journey with Phoenix. ๐Ÿš€

  • New Feature: ๐ŸŽ‰ You can now forward requests to the same Plug multiple times, as long as itโ€™s not a router! This change grants you more flexibility in routing configurations, allowing for more creative and dynamic setups. We've updated the Phoenix.Router and Phoenix.Router.Route modules to make this happen, ensuring that your app can handle multiple forwards like a champ. Just remember, dynamic segments in paths are still a no-go to keep everything neat and tidy.

  • Improvement: We've streamlined our project setup by using a single package.json file. This tidy-up not only makes dependency management a breeze but also comes with a new ESLint configuration to keep your code looking sharp. Plus, weโ€™ve tweaked the jest.config.js for better test file detection. This change keeps everything organized and resolves issue #6001, making life easier for developers everywhere. ๐ŸŒŸ

  • Improvement: No more accidentally using reserved app names! We've introduced a validation mechanism that raises an error if you try to use names like "server" or "table" for your app. This ensures smoother sailing when creating new Phoenix projects. We've also added tests to make sure this feature works perfectly, keeping your app-naming process conflict-free. ๐Ÿšซ

  • Bugfix: Weโ€™ve squashed some pesky typos in our documentation. A missing word in up_and_running.md and a typo in request_lifecycle.md have been fixed, making our docs clearer and more professional. Now, you can focus on building amazing apps without tripping over confusing instructions. ๐Ÿ“šโœจ

Thanks for being awesome and happy coding! ๐Ÿ˜„


Hey there, awesome devs! ๐ŸŽ‰ We've got a small but mighty update for you.

Changelog

  • Chore: We've made a little tweak in our documentation to point you in the right direction! ๐Ÿ› ๏ธ The path for the "index.html" template in our Elixir app docs was a bit off. We've updated it from lib/hello_web/templates/page/index.html.heex to the correct path: lib/hello_web/controllers/post_html/index.html.heex. Now, when you're testing controllers, you'll have the right info at your fingertips. Happy coding! ๐Ÿš€

Welcome to the latest updates! We've been busy making some awesome improvements to the Phoenix framework, and we can't wait for you to check them out. Here's what's new and improved:

  • Improved File Change Detection in Code Reloader ๐Ÿš€: We've fine-tuned the way Phoenix detects changes in files. Now, the code reloader is smarter about checking for stale configurations and dependencies. No more unnecessary warnings when your Mix project is set up correctly! Plus, we've excluded files in the _build directory from checks, so you can focus on the changes that really matter. This means a smoother, more efficient development experience for you! ๐ŸŽ‰

  • Streamlined Test File Handling ๐Ÿงช: Testing just got a little bit easier! We've added a test_ignore_filters option to the mix.exs file. This helps you ignore certain expected test files, especially those in the "test/fixtures/" and "test/support/" directories. Now, your test runs will be more streamlined, focusing only on what's important. This update is part of a larger effort to enhance testing practices across the Elixir community. Happy testing! ๐Ÿ› ๏ธ

We hope these updates make your coding journey even more enjoyable. Keep building awesome things! ๐ŸŒŸ


Hey there, fabulous users! We've got some exciting updates for you, so let's dive right in! ๐ŸŽ‰

Improvement: Email Address Validation ๐Ÿ“จ
No more sneaky commas in your email field! We've beefed up our email validation game to make sure you enter just one email address, and one only. The new regex is a stickler for rules, disallowing any cheeky commas or semicolons. Rest assured, your email will be a solo act, and it'll be in tip-top shape for authentication! ๐Ÿš€

Improvement: Clearer Documentation for Code Building ๐Ÿ“š
We've polished up our docs to make your life easier. Now, when you're running multiple instances of your app, you'll know exactly how to manage your code reloading with the MIX_BUILD_PATH environment variable. No more mix-ups with build directoriesโ€”just smooth sailing and clear guidance for a seamless developer experience. Happy coding! ๐Ÿ’ปโœจ

That's all for now, folks. Keep those updates coming, and stay awesome! ๐ŸŒŸ


Here's the latest scoop on the awesome changes we've been brewing. Get ready for some sweet improvements and fixes that will make your coding life a little brighter! ๐ŸŒŸ

  • New feature: We've prepped the codebase for the shiny new HEEx interpolation syntax! ๐Ÿš€ This includes a bump in LiveView to 1.0, updates across guides, templates, and integration tests, and some nifty changes to Phoenix generator files. A big shoutout to Steffen Deusch for the team effort on this one. ๐ŸŽ‰

  • Improvement: Added a neat example for pool_count to help you boost performance in the Phx.New.Generator module. Now your multi-core machines can work their magic even better! ๐Ÿ’ช We've also polished up the get_web_adapter function for a cleaner look.

  • Improvement: We're stepping into the future with a version update to "1.18.0-dev"! This signals our journey toward the next big thing in the Phoenix framework. Stay tuned for more exciting developments! ๐ŸŒŸ

  • Bugfix: We squashed some pesky typos in the CHANGELOG, thanks to Chris McCord's eagle eyes. ๐Ÿฆ… Now it's all nice and tidy, with "whichs" corrected to "which" and "unfied" to "unified". Keepin' it classy and clear! ๐Ÿ“š


Here's the latest scoop on the Phoenix framework updates! We've got some awesome improvements and enhancements to make your development experience smoother and more enjoyable. Let's dive into the highlights:

Improvement: The guides/contexts.md file received a makeover! ๐Ÿ› ๏ธ We've polished up those Elixir code snippets to perfection, ensuring clarity and correctness. Migration files for creating products, cart items, orders, and line items now come with all the bells and whistles, like precision and scale for decimal fields. Plus, the documentation now makes it a breeze to understand schema associations within the ShoppingCart context. You'll be a Phoenix pro in no time!

Improvement: Starting a new Phoenix app just got easier! โšก The "Up and Running" guide now features an express option for supported OSes, letting you kick things off with a single command. No worries if you're on an unsupported system; we've got you covered with the traditional mix phx.new method. Plus, the release notes now remind us to update Elixir and Erlang/OTP versions on the official site. Smooth sailing ahead for new devs and framework maintainers!

Improvement: Dark mode lovers, rejoice! ๐ŸŒ™ The README header image now adapts to your color scheme preference. We've added a snazzy phoenix-orange.png for dark mode, while the classic phoenix.png shines in light mode. It's all about that visual experience, folks!

Chore: We've done some housekeeping with a dependency update. ๐Ÿ“ฆ The mix.exs and mix.lock files got a refresh, ensuring our project stays in tip-top shape with the latest and greatest libraries. It's all about keeping things secure, functional, and running smoothly.

Enjoy these updates and happy coding with Phoenix! ๐Ÿš€


Welcome to our latest update! We've been busy making some fantastic improvements and squashing bugs to enhance your development experience. Here's a look at what's new and improved:

  • New feature: Customizing primary key names is now a breeze! ๐ŸŽ‰ You can specify an alternative name for the primary key column when generating schemas and migrations, thanks to the new --primary-key option. This gives you more flexibility in naming your primary keys and improves the usability of schema generation.

  • Improvement: We've made it easier to enable new Phoenix Live Reload features by adding commented-out JavaScript code in the development environment. Now, streaming server logs to the browser console and clicking on components to jump directly to their code definitions is just a few clicks away. ๐Ÿš€

  • Improvement: Autocomplete attributes have been added to password and username fields across various templates. This enhancement allows browsers to automatically fill in saved credentials, making login and registration processes smoother and faster. ๐Ÿ’พ

  • Improvement: The default gzip setting in the generated endpoint now considers code reloading status. Compressed static files will be served efficiently in production environments, improving performance. โšก

  • New feature: Introducing the web console logger for new projects! This feature streams server logs directly to the client, enhancing debugging and development efficiency. It's also available for umbrella projects, thanks to collaborative efforts with Josรฉ Valim. ๐Ÿ–ฅ๏ธ

  • Bugfix: We fixed a potential race condition by ensuring endpoint configuration is fully initialized before the socket listener starts. This prevents crashes from incoming requests during the configuration setup, enhancing stability and reliability. ๐Ÿ› ๏ธ

  • Bugfix: We reverted a previous change related to the web console logger for new projects in favor of an alternative solution. This simplifies the setup for new projects, aligning with the more effective approach. ๐Ÿ”„

  • Bugfix: The "scrollbar-gutter" class has been removed from the HTML template, setting the scrollbar-gutter to "auto." This resolves an issue with scrollbar handling in the user interface. ๐Ÿ–ผ๏ธ

We hope these updates make your development journey smoother and more enjoyable. Happy coding! ๐ŸŽˆ


Here's a peek at the latest and greatest updates that have been made to our project, bringing you smoother experiences and more intuitive interfaces. Let's dive in! ๐Ÿš€

Improvement: Update Text Input to Textarea
We've given our HTML generator a little makeover! ๐ŸŽจ The input type for text fields is now a textarea instead of a plain old text input. This change is all about making life easier for those who need to input multi-line text. It's now live in both phx.gen.html.ex and phx.gen.live.ex files, ensuring a consistent experience across the board. Plus, we've jazzed up our test files (phx.gen.html_test.exs and phx.gen.live_test.exs) to make sure everything works like a charm. This tweak is all about making your user interface more intuitive and user-friendly. Enjoy the enhanced usability! ๐ŸŒŸ


Hey there, awesome developer! We've got some cool updates for you in the Phoenix framework. Check out the latest changes that are going to make your coding life a bit smoother and more fun. ๐ŸŽ‰

  • Improvement: Protocol Purge Power-Up
    We've supercharged the Phoenix code reloader by ensuring protocols are purged after compilation. This means fewer hiccups and a smoother development experience. Say goodbye to those pesky old protocols lurking in the shadows! ๐ŸŒŸ

  • Improvement: Gettext API Glow-Up
    We've revamped the generators to align with the shiny new Gettext API. This update simplifies the translation process and keeps everything consistent across the Phoenix framework. Now your internationalization game is stronger than ever! ๐ŸŒโœจ

  • Improvement: Debian Update to Bookworm
    We've updated the Debian version from "bullseye" to "bookworm" for a fresher development environment. Plus, we're now only testing on Erlang/OTP 24 and above. This means more stability and better performance in your workflow. Keep on coding! ๐Ÿš€

These updates are here to make sure your Phoenix projects are running smoothly and efficiently. Happy coding! ๐Ÿ’ป๐ŸŽˆ


Here's the lowdown on the latest updates, packed with improvements to make your development journey smoother and more enjoyable! ๐Ÿš€

  • Improvement: Enhanced Channel Documentation ๐Ÿ“š
    We've given the Phoenix Channel module documentation a significant upgrade! Now, itโ€™s easier to understand the parameters and functionalities related to channel callbacks and broadcasting events. Detailed explanations have been added for the handle_in function, including insights on the topic, map payload from the client, and the Phoenix.Socket instance. Plus, we've streamlined the broadcasting section to focus on the broadcast function. This makes it a breeze to broadcast messages both from within channels and other parts of your application. Happy coding with clearer docs! โœจ

  • Improvement: Channel Docs and Example Code Tweaks ๐Ÿ”ง
    We've polished the channel documentation and example code by fixing a filename reference in Step 2 of the guide. The correct layout file is now root.html.heex, ensuring your user token is passed to JavaScript without a hitch. Similar updates were made in the socket.js file to keep everything aligned. This makes integrating JavaScript for user tokens in real-time channels a piece of cake!

  • Improvement: Consistent Path Helpers in Auth Templates ๐Ÿ”„
    Say goodbye to hardcoded URLs! We've updated the Phoenix authentication templates to use the ~p syntax for path helpers, replacing those pesky string literals. This change enhances the maintainability and readability of the code, bringing consistency across the board. The updates span several test files, including confirmation_live_test.exs, forgot_password_live_test.exs, login_live_test.exs, and registration_live_test.exs. Enjoy a cleaner, more consistent codebase in your authentication module! ๐ŸŽ‰

Showing 1 to 20 of 34 Entries